[{"data":1,"prerenderedAt":755},["ShallowReactive",2],{"/en-us/blog/codepen-welcome-to-gitlab":3,"navigation-en-us":32,"banner-en-us":460,"footer-en-us":477,"Marcia Ramos":722,"next-steps-en-us":735,"footer-source-/en-us/blog/codepen-welcome-to-gitlab/":750},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":8,"content":16,"config":22,"_id":25,"_type":26,"title":27,"_source":28,"_file":29,"_stem":30,"_extension":31},"/en-us/blog/codepen-welcome-to-gitlab","blog",false,"",{"title":9,"description":10,"ogTitle":9,"ogDescription":10,"noIndex":6,"ogImage":11,"ogUrl":12,"ogSiteName":13,"ogType":14,"canonicalUrls":12,"schema":15},"CodePen, welcome to GitLab!","Yes, it's worth it - CodePen has moved to GitLab!","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666619/Blog/Hero%20Images/codepen-welcome-to-gitlab-cover.png","https://about.gitlab.com/blog/codepen-welcome-to-gitlab","https://about.gitlab.com","article","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"CodePen, welcome to GitLab!\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Marcia Ramos\"}],\n        \"datePublished\": \"2017-01-27\",\n      }",{"title":9,"description":10,"authors":17,"heroImage":11,"date":19,"body":20,"category":21},[18],"Marcia Ramos","2017-01-27","\nWe were so glad to hear that [CodePen] switched to GitLab!\n\nRead through the ins and outs of their move! 😃\n\n\u003C!-- more -->\n\n----\n\nI'm a big fan of CodePen. Their product is awesome: it's\nintuitive, beautiful, works like a charm, and it's really easy to use.\nTheir community's work is evolving – we could spend hours playing around\nwith pens like this, [created][pen] by [Jase Smith]:\n\n\u003Cp data-height=\"300\" data-theme-id=\"23203\" data-slug-hash=\"dNVaae\" data-default-tab=\"js,result\" data-user=\"virtuacreative\" data-embed-version=\"2\" data-pen-title=\"Spock! Paper Scissors\" class=\"codepen\">See the Pen \u003Ca href=\"http://codepen.io/virtuacreative/pen/dNVaae/\">Spock! Paper Scissors\u003C/a> by Virtua Creative (\u003Ca href=\"http://codepen.io/virtuacreative\">@virtuacreative\u003C/a>) on \u003Ca href=\"http://codepen.io\">CodePen\u003C/a>.\u003C/p>\n\u003Cscript async src=\"https://production-assets.codepen.io/assets/embed/ei.js\">\u003C/script>\n\nWhen I heard that they had switched to GitLab, I was thrilled! Yaaay!\n&nbsp;\u003Ci class=\"fas fa-codepen\" aria-hidden=\"true\">\u003C/i>\n&nbsp;**CodePen, welcome to GitLab!**\n&nbsp;\u003Ci class=\"fab fa-gitlab\" aria-hidden=\"true\">\u003C/i>\n\nThey're very cool folks, and their [team][team] is making such an\nawesome product! They're also [remote only](https://www.remoteonly.org/), like us.\n\nListen to their podcast [Codepen Radio - 114 - GitLab](https://blog.codepen.io/2017/01/24/114-gitlab/), which details why they moved and how it\nwent. If you'd rather read, we've included some of the highlights below.\n\n## Highlights\n\n{::options parse_block_html=\"true\" /}\n\n\u003Cdiv class=\"panel panel-gitlab-orange\">\n### \u003Ci class=\"fas fa-cog fa-fw\" aria-hidden=\"true\">\u003C/i> Control\n{: .panel-heading}\n\u003Cdiv class=\"panel-body\">\n5:18. The first thing they talked about is \"control\".\n\n7:45. They can't rely on a third-party service to deploy\ntheir code. Whenever there's downtime, there's nothing they can do about it. With a self-managed GitLab instance,\nthey have the ability to exercise control over their server and everything else.\n\u003C/div>\n\u003C/div>\n\n\u003Cdiv class=\"panel panel-gitlab-purple\">\n### \u003Ci class=\"fas fa-lock fa-fw\" aria-hidden=\"true\">\u003C/i> Security\n{: .panel-heading}\n\u003Cdiv class=\"panel-body\">\n10:00. Because it's self-managed, they feel much more protected from hacker attacks and system breaches.\nThey have their own private network space in which they run GitLab.\n\n> 12.35. _We have control, we have code in our own network, we have higher security._\n\u003C/div>\n\u003C/div>\n\n\u003Cdiv class=\"panel panel-gitlab-orange\">\n### \u003Ci class=\"fas fa-code fa-fw\" aria-hidden=\"true\">\u003C/i> Open source &amp; Cost\n{: .panel-heading}\n\u003Cdiv class=\"panel-body\">\n> 13:00. _The open source version of GitLab [[CE]] is 100% free. You can install it on your own server._\n\nThey decided to go for [GitLab EE Starter][ee] for having certain great features available only on EE, such as [Multiple Issue Boards][boards], and [fast-forward merge](https://docs.gitlab.com/ee/user/project/merge_requests/methods/index.html).\n\n> 14:26. _[GitLab EE] is not terribly expensive, and we're also supporting open source development._\n\u003C/div>\n\u003C/div>\n\n\u003Cdiv class=\"panel panel-gitlab-purple\">\n### \u003Ci class=\"fas fa-sync-alt fa-fw\" aria-hidden=\"true\">\u003C/i> Continuous Integration and Continuous Deployment\n{: .panel-heading}\n\u003Cdiv class=\"panel-body\">\n15:40. Finally, they don't need to rely on third-party services to apply Continuous Integration to test and\ndeploy their code. [GitLab CI][ci] does this job, and it's built-in in GitLab.\n\n> 16:34. _Because this [CI] runs internally, and because we have access to our own VPC and resources inside of it, like Docker stuff, and AWS EFS stuff, we can actually take a step further and not just test our stuff, but grab it and deploy it._\n\n> 16:58. _In our case, [GitLab] give you tools to make [Continuous Integration, Continuous Testing and Continuous Deployment][ci-cd] really, really simple. And that, to me, is the biggest sell of them all. That's simply not available on GitHub._\n\nThey also enjoy not having to deploy from the command line, as it was impossible to track.\n\n17:15. They love our [Pipelines][pipes], where the entire team can see what's going on and who's doing what. The steps are visible.\n\n> 17:27. _It's very clear, in GitLab, whether a build on staging has actually been pushed to production. So, if I'm going to deploy something to production, I can very easily see who has moved that into master since the last production deploy._\n\nThey also love the [rollback] button: no pain, all gain. Now it's easy to roll back changes.\n\n> 19:18. _I feel more comfortable, for sure._\n\u003C/div>\n\u003C/div>\n\n\u003Cdiv class=\"panel panel-gitlab-orange\">\n### \u003Ci class=\"far fa-heart fa-fw\" aria-hidden=\"true\">\u003C/i> Their impression\n{: .panel-heading}\n\u003Cdiv class=\"panel-body\">\n23:20. Overall, GitLab brought them speed, security and agility.\n\n> 23:37. _Whatever we want to do, we can do, and we're not bound by someone else's Continuous Deployment setup._\n\u003C/div>\n\u003C/div>\n\n\u003Cdiv class=\"panel panel-gitlab-purple\">\n### \u003Ci class=\"fas fa-chain fa-fw\" aria-hidden=\"true\">\u003C/i> Project Management: everything in one place\n{: .panel-heading}\n\u003Cdiv class=\"panel-body\">\n> 24:56. _We were using Trello boards to organize our tasks, but very recently we've decided to move our project's specific tasks into GitLab [[Issue Boards]]. And that's because Trello is really good, in my opinion, for idea generation and quickly getting up cards for a lot of ideas you have. But the fact that the cards are so easy to add, at any point anywhere, kind of hurt us when we were trying to plan dev-work for a project, because we had duplicate cards, and the cards weren't tied to any specific pull request or issue in the codebase. So, it's kind of wish-washy having project planning over in Trello. (...) We've decided to switch to GitLab for actionable tasks related to getting up a project finished within CodePen._\n\n26:40. They appreciate having the [Issue Boards], [Todos], and [Time Tracking][tt] in one single platform, tied together with their code.\n\n> 28:07. _Let's start looking at all of the things that are required to go into a feature and all, and assign them priorities, and people, and milestones, and time estimates, and stuff, and it feels like a really grown-up management of a thing, and it's pretty interesting!_\n\n29:10. They mentioned how cool it is to perform a [slash command][slash]\nto add how long it's going to take to complete the implementation of a feature, right from an issue comment.\n\n> 29:50. _We are, as a group, sick of not having an understanding of how long it's going to take to complete a feature or whatever. If we use [[Time Tracking][tt]], we'll know, or we'll be a lot closer to it! And further, we're going to be more accurate on what those time estimates are going to be, and we can plan around that, and not feel so wishy-washy about these big important things that we're doing. So we get that! That comes in the GitLab package as well, so it's kind of like we replaced GitHub, Codeship and Trello with one open source tool! This feels kind of cool!_\n\u003C/div>\n\u003C/div>\n\n\u003Cdiv class=\"panel panel-gitlab-orange\">\n### \u003Ci class=\"fas fa-heartbeat fa-fw\" aria-hidden=\"true\">\u003C/i> The transition\n{: .panel-heading}\n\u003Cdiv class=\"panel-body\">\n30.45. They feel they made a mistake by not using the importer tool to import their projects: they simply pushed to GitLab like a separate remote. By doing so, they left some issues and wikis behind and had to transfer them manually.\n\n> 31:24. _This is biggest warning I have for everyone: read the [documentation][docs]!_\n\nWith [GitLab Importer][importer], you can just import your projects from GitHub directly\nfrom the UI, which means pushing a button.\n\n> 31:45. _It's just a button, essentially. You just have to give access to your GitHub account via keys, and once you've done that, GitLab will actually pull in all of your repos, and say \"Which ones do you want to import?\" and you just go \"import\", \"import\", \"import\"..._\n\u003C/div>\n\u003C/div>\n\n\u003Cdiv class=\"panel panel-gitlab-purple\">\n### \u003Ci class=\"fas fa-check-square-o fa-fw\" aria-hidden=\"true\">\u003C/i> Bottom Line\n{: .panel-heading}\n\u003Cdiv class=\"panel-body\">\nThere's one thing they are missing: squash-merge. Good news for y'all: we have something like that [coming][squash] soon!\n\nAt 33:44 they also mention burndown charts, and there is [an issue][burndown] for that with a lot of traction.\n\n> 34:03. _My final feeling about GitLab is it's incredibly impressive work. Like, holy crap, this is really good software! High five team!_ 🙌\n\n\u003C/div>\n\u003C/div>\n\n## GitLab Version\n\nCodePen is using [GitLab EE Starter][ee], self-managed on AWS together with all their\nstructure.\n\n----\n\nCover image: screenshot of [About CodePen][about].\n{:.note}\n\n\u003C!-- identifiers -->\n\n[about]: http://codepen.io/about/\n[boards]: https://docs.gitlab.com/ee/user/project/issue_board.html#step-6\n[burndown]: https://gitlab.com/gitlab-org/gitlab-ee/issues/91\n[ce]: /stages-devops-lifecycle/ \"GitLab Community Edition\"\n[ci-cd]: /blog/continuous-integration-delivery-and-deployment-with-gitlab/\n[ci]: /solutions/continuous-integration/ [Codepen]: https://codepen.io/\n[docs]: https://docs.gitlab.com/\n[ee]: /pricing/ \"GitLab Enterprise Edition\"\n[ff]: https://docs.gitlab.com/ee/user/project/merge_requests/methods/index.html\n[importer]: https://docs.gitlab.com/ee/user/project/import/github.html\n[Issue Boards]: https://docs.gitlab.com/ee/user/project/issue_board.html\n[jase smith]: https://codepen.io/jasesmith/\n[pen]: https://codepen.io/jasesmith/pen/GqaVrx\n[pipes]: https://docs.gitlab.com/ee/ci/pipelines/index.html\n[remote-only]: https://handbook.gitlab.com/handbook/company/culture/\n[rollback]: https://docs.gitlab.com/ee/ci/environments/index.html#viewing-the-deployment-history-of-an-environment\n[slash]: https://docs.gitlab.com/ee/user/project/quick_actions.html\n[squash]: https://gitlab.com/gitlab-org/gitlab-ee/issues/150\n[team]: https://codepen.io/about/\n[todos]: https://docs.gitlab.com/ee/user/todos.html\n[tt]: https://docs.gitlab.com/ee/user/project/time_tracking.html\n\n\u003Cstyle>\nh3 {\n  margin-top: 0 !important;\n  margin-bottom: 0 !important;\n  font-size: 20px !important;\n}\n.shadow {\n  box-shadow: 0 4px 18px 0 rgba(0, 0, 0, 0.1), 0 6px 20px 0 rgba(0, 0, 0, 0.09);\n  margin-bottom: 20px;\n  margin-top: 20px; }\n}\n\u003C/style>\n","open-source",{"slug":23,"featured":6,"template":24},"codepen-welcome-to-gitlab","BlogPost","content:en-us:blog:codepen-welcome-to-gitlab.yml","yaml","Codepen Welcome To Gitlab","content","en-us/blog/codepen-welcome-to-gitlab.yml","en-us/blog/codepen-welcome-to-gitlab","yml",{"_path":33,"_dir":34,"_draft":6,"_partial":6,"_locale":7,"data":35,"_id":456,"_type":26,"title":457,"_source":28,"_file":458,"_stem":459,"_extension":31},"/shared/en-us/main-navigation","en-us",{"logo":36,"freeTrial":41,"sales":46,"login":51,"items":56,"search":387,"minimal":418,"duo":437,"pricingDeployment":446},{"config":37},{"href":38,"dataGaName":39,"dataGaLocation":40},"/","gitlab logo","header",{"text":42,"config":43},"Get free trial",{"href":44,"dataGaName":45,"dataGaLocation":40},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":47,"config":48},"Talk to sales",{"href":49,"dataGaName":50,"dataGaLocation":40},"/sales/","sales",{"text":52,"config":53},"Sign in",{"href":54,"dataGaName":55,"dataGaLocation":40},"https://gitlab.com/users/sign_in/","sign in",[57,101,198,203,308,368],{"text":58,"config":59,"cards":61,"footer":84},"Platform",{"dataNavLevelOne":60},"platform",[62,68,76],{"title":58,"description":63,"link":64},"The most comprehensive AI-powered DevSecOps Platform",{"text":65,"config":66},"Explore our Platform",{"href":67,"dataGaName":60,"dataGaLocation":40},"/platform/",{"title":69,"description":70,"link":71},"GitLab Duo (AI)","Build software faster with AI at every stage of development",{"text":72,"config":73},"Meet GitLab Duo",{"href":74,"dataGaName":75,"dataGaLocation":40},"/gitlab-duo/","gitlab duo ai",{"title":77,"description":78,"link":79},"Why GitLab","10 reasons why Enterprises choose GitLab",{"text":80,"config":81},"Learn more",{"href":82,"dataGaName":83,"dataGaLocation":40},"/why-gitlab/","why gitlab",{"title":85,"items":86},"Get started with",[87,92,97],{"text":88,"config":89},"Platform Engineering",{"href":90,"dataGaName":91,"dataGaLocation":40},"/solutions/platform-engineering/","platform engineering",{"text":93,"config":94},"Developer Experience",{"href":95,"dataGaName":96,"dataGaLocation":40},"/developer-experience/","Developer experience",{"text":98,"config":99},"MLOps",{"href":100,"dataGaName":98,"dataGaLocation":40},"/topics/devops/the-role-of-ai-in-devops/",{"text":102,"left":103,"config":104,"link":106,"lists":110,"footer":180},"Product",true,{"dataNavLevelOne":105},"solutions",{"text":107,"config":108},"View all Solutions",{"href":109,"dataGaName":105,"dataGaLocation":40},"/solutions/",[111,136,159],{"title":112,"description":113,"link":114,"items":119},"Automation","CI/CD and automation to accelerate deployment",{"config":115},{"icon":116,"href":117,"dataGaName":118,"dataGaLocation":40},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[120,124,128,132],{"text":121,"config":122},"CI/CD",{"href":123,"dataGaLocation":40,"dataGaName":121},"/solutions/continuous-integration/",{"text":125,"config":126},"AI-Assisted Development",{"href":74,"dataGaLocation":40,"dataGaName":127},"AI assisted development",{"text":129,"config":130},"Source Code Management",{"href":131,"dataGaLocation":40,"dataGaName":129},"/solutions/source-code-management/",{"text":133,"config":134},"Automated Software Delivery",{"href":117,"dataGaLocation":40,"dataGaName":135},"Automated software delivery",{"title":137,"description":138,"link":139,"items":144},"Security","Deliver code faster without compromising security",{"config":140},{"href":141,"dataGaName":142,"dataGaLocation":40,"icon":143},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[145,149,154],{"text":146,"config":147},"Application Security Testing",{"href":141,"dataGaName":148,"dataGaLocation":40},"Application security testing",{"text":150,"config":151},"Software Supply Chain Security",{"href":152,"dataGaLocation":40,"dataGaName":153},"/solutions/supply-chain/","Software supply chain security",{"text":155,"config":156},"Software Compliance",{"href":157,"dataGaName":158,"dataGaLocation":40},"/solutions/software-compliance/","software compliance",{"title":160,"link":161,"items":166},"Measurement",{"config":162},{"icon":163,"href":164,"dataGaName":165,"dataGaLocation":40},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[167,171,175],{"text":168,"config":169},"Visibility & Measurement",{"href":164,"dataGaLocation":40,"dataGaName":170},"Visibility and Measurement",{"text":172,"config":173},"Value Stream Management",{"href":174,"dataGaLocation":40,"dataGaName":172},"/solutions/value-stream-management/",{"text":176,"config":177},"Analytics & Insights",{"href":178,"dataGaLocation":40,"dataGaName":179},"/solutions/analytics-and-insights/","Analytics and insights",{"title":181,"items":182},"GitLab for",[183,188,193],{"text":184,"config":185},"Enterprise",{"href":186,"dataGaLocation":40,"dataGaName":187},"/enterprise/","enterprise",{"text":189,"config":190},"Small Business",{"href":191,"dataGaLocation":40,"dataGaName":192},"/small-business/","small business",{"text":194,"config":195},"Public Sector",{"href":196,"dataGaLocation":40,"dataGaName":197},"/solutions/public-sector/","public sector",{"text":199,"config":200},"Pricing",{"href":201,"dataGaName":202,"dataGaLocation":40,"dataNavLevelOne":202},"/pricing/","pricing",{"text":204,"config":205,"link":207,"lists":211,"feature":295},"Resources",{"dataNavLevelOne":206},"resources",{"text":208,"config":209},"View all resources",{"href":210,"dataGaName":206,"dataGaLocation":40},"/resources/",[212,245,267],{"title":213,"items":214},"Getting started",[215,220,225,230,235,240],{"text":216,"config":217},"Install",{"href":218,"dataGaName":219,"dataGaLocation":40},"/install/","install",{"text":221,"config":222},"Quick start guides",{"href":223,"dataGaName":224,"dataGaLocation":40},"/get-started/","quick setup checklists",{"text":226,"config":227},"Learn",{"href":228,"dataGaLocation":40,"dataGaName":229},"https://university.gitlab.com/","learn",{"text":231,"config":232},"Product documentation",{"href":233,"dataGaName":234,"dataGaLocation":40},"https://docs.gitlab.com/","product documentation",{"text":236,"config":237},"Best practice videos",{"href":238,"dataGaName":239,"dataGaLocation":40},"/getting-started-videos/","best practice videos",{"text":241,"config":242},"Integrations",{"href":243,"dataGaName":244,"dataGaLocation":40},"/integrations/","integrations",{"title":246,"items":247},"Discover",[248,253,257,262],{"text":249,"config":250},"Customer success stories",{"href":251,"dataGaName":252,"dataGaLocation":40},"/customers/","customer success stories",{"text":254,"config":255},"Blog",{"href":256,"dataGaName":5,"dataGaLocation":40},"/blog/",{"text":258,"config":259},"Remote",{"href":260,"dataGaName":261,"dataGaLocation":40},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"text":263,"config":264},"TeamOps",{"href":265,"dataGaName":266,"dataGaLocation":40},"/teamops/","teamops",{"title":268,"items":269},"Connect",[270,275,280,285,290],{"text":271,"config":272},"GitLab Services",{"href":273,"dataGaName":274,"dataGaLocation":40},"/services/","services",{"text":276,"config":277},"Community",{"href":278,"dataGaName":279,"dataGaLocation":40},"/community/","community",{"text":281,"config":282},"Forum",{"href":283,"dataGaName":284,"dataGaLocation":40},"https://forum.gitlab.com/","forum",{"text":286,"config":287},"Events",{"href":288,"dataGaName":289,"dataGaLocation":40},"/events/","events",{"text":291,"config":292},"Partners",{"href":293,"dataGaName":294,"dataGaLocation":40},"/partners/","partners",{"backgroundColor":296,"textColor":297,"text":298,"image":299,"link":303},"#2f2a6b","#fff","Insights for the future of software development",{"altText":300,"config":301},"the source promo card",{"src":302},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758208064/dzl0dbift9xdizyelkk4.svg",{"text":304,"config":305},"Read the latest",{"href":306,"dataGaName":307,"dataGaLocation":40},"/the-source/","the source",{"text":309,"config":310,"lists":312},"Company",{"dataNavLevelOne":311},"company",[313],{"items":314},[315,320,326,328,333,338,343,348,353,358,363],{"text":316,"config":317},"About",{"href":318,"dataGaName":319,"dataGaLocation":40},"/company/","about",{"text":321,"config":322,"footerGa":325},"Jobs",{"href":323,"dataGaName":324,"dataGaLocation":40},"/jobs/","jobs",{"dataGaName":324},{"text":286,"config":327},{"href":288,"dataGaName":289,"dataGaLocation":40},{"text":329,"config":330},"Leadership",{"href":331,"dataGaName":332,"dataGaLocation":40},"/company/team/e-group/","leadership",{"text":334,"config":335},"Team",{"href":336,"dataGaName":337,"dataGaLocation":40},"/company/team/","team",{"text":339,"config":340},"Handbook",{"href":341,"dataGaName":342,"dataGaLocation":40},"https://handbook.gitlab.com/","handbook",{"text":344,"config":345},"Investor relations",{"href":346,"dataGaName":347,"dataGaLocation":40},"https://ir.gitlab.com/","investor relations",{"text":349,"config":350},"Trust Center",{"href":351,"dataGaName":352,"dataGaLocation":40},"/security/","trust center",{"text":354,"config":355},"AI Transparency Center",{"href":356,"dataGaName":357,"dataGaLocation":40},"/ai-transparency-center/","ai transparency center",{"text":359,"config":360},"Newsletter",{"href":361,"dataGaName":362,"dataGaLocation":40},"/company/contact/","newsletter",{"text":364,"config":365},"Press",{"href":366,"dataGaName":367,"dataGaLocation":40},"/press/","press",{"text":369,"config":370,"lists":371},"Contact us",{"dataNavLevelOne":311},[372],{"items":373},[374,377,382],{"text":47,"config":375},{"href":49,"dataGaName":376,"dataGaLocation":40},"talk to sales",{"text":378,"config":379},"Support portal",{"href":380,"dataGaName":381,"dataGaLocation":40},"https://support.gitlab.com","support portal",{"text":383,"config":384},"Customer portal",{"href":385,"dataGaName":386,"dataGaLocation":40},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":388,"login":389,"suggestions":396},"Close",{"text":390,"link":391},"To search repositories and projects, login to",{"text":392,"config":393},"gitlab.com",{"href":54,"dataGaName":394,"dataGaLocation":395},"search login","search",{"text":397,"default":398},"Suggestions",[399,401,405,407,411,415],{"text":69,"config":400},{"href":74,"dataGaName":69,"dataGaLocation":395},{"text":402,"config":403},"Code Suggestions (AI)",{"href":404,"dataGaName":402,"dataGaLocation":395},"/solutions/code-suggestions/",{"text":121,"config":406},{"href":123,"dataGaName":121,"dataGaLocation":395},{"text":408,"config":409},"GitLab on AWS",{"href":410,"dataGaName":408,"dataGaLocation":395},"/partners/technology-partners/aws/",{"text":412,"config":413},"GitLab on Google Cloud",{"href":414,"dataGaName":412,"dataGaLocation":395},"/partners/technology-partners/google-cloud-platform/",{"text":416,"config":417},"Why GitLab?",{"href":82,"dataGaName":416,"dataGaLocation":395},{"freeTrial":419,"mobileIcon":424,"desktopIcon":429,"secondaryButton":432},{"text":420,"config":421},"Start free trial",{"href":422,"dataGaName":45,"dataGaLocation":423},"https://gitlab.com/-/trials/new/","nav",{"altText":425,"config":426},"Gitlab Icon",{"src":427,"dataGaName":428,"dataGaLocation":423},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":425,"config":430},{"src":431,"dataGaName":428,"dataGaLocation":423},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":433,"config":434},"Get Started",{"href":435,"dataGaName":436,"dataGaLocation":423},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/compare/gitlab-vs-github/","get started",{"freeTrial":438,"mobileIcon":442,"desktopIcon":444},{"text":439,"config":440},"Learn more about GitLab Duo",{"href":74,"dataGaName":441,"dataGaLocation":423},"gitlab duo",{"altText":425,"config":443},{"src":427,"dataGaName":428,"dataGaLocation":423},{"altText":425,"config":445},{"src":431,"dataGaName":428,"dataGaLocation":423},{"freeTrial":447,"mobileIcon":452,"desktopIcon":454},{"text":448,"config":449},"Back to pricing",{"href":201,"dataGaName":450,"dataGaLocation":423,"icon":451},"back to pricing","GoBack",{"altText":425,"config":453},{"src":427,"dataGaName":428,"dataGaLocation":423},{"altText":425,"config":455},{"src":431,"dataGaName":428,"dataGaLocation":423},"content:shared:en-us:main-navigation.yml","Main Navigation","shared/en-us/main-navigation.yml","shared/en-us/main-navigation",{"_path":461,"_dir":34,"_draft":6,"_partial":6,"_locale":7,"title":462,"button":463,"image":468,"config":472,"_id":474,"_type":26,"_source":28,"_file":475,"_stem":476,"_extension":31},"/shared/en-us/banner","is now in public beta!",{"text":464,"config":465},"Try the Beta",{"href":466,"dataGaName":467,"dataGaLocation":40},"/gitlab-duo/agent-platform/","duo banner",{"altText":469,"config":470},"GitLab Duo Agent Platform",{"src":471},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1753720689/somrf9zaunk0xlt7ne4x.svg",{"layout":473},"release","content:shared:en-us:banner.yml","shared/en-us/banner.yml","shared/en-us/banner",{"_path":478,"_dir":34,"_draft":6,"_partial":6,"_locale":7,"data":479,"_id":718,"_type":26,"title":719,"_source":28,"_file":720,"_stem":721,"_extension":31},"/shared/en-us/main-footer",{"text":480,"source":481,"edit":487,"contribute":492,"config":497,"items":502,"minimal":710},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":482,"config":483},"View page source",{"href":484,"dataGaName":485,"dataGaLocation":486},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":488,"config":489},"Edit this page",{"href":490,"dataGaName":491,"dataGaLocation":486},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":493,"config":494},"Please contribute",{"href":495,"dataGaName":496,"dataGaLocation":486},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":498,"facebook":499,"youtube":500,"linkedin":501},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[503,550,603,647,676],{"title":199,"links":504,"subMenu":519},[505,509,514],{"text":506,"config":507},"View plans",{"href":201,"dataGaName":508,"dataGaLocation":486},"view plans",{"text":510,"config":511},"Why Premium?",{"href":512,"dataGaName":513,"dataGaLocation":486},"/pricing/premium/","why premium",{"text":515,"config":516},"Why Ultimate?",{"href":517,"dataGaName":518,"dataGaLocation":486},"/pricing/ultimate/","why ultimate",[520],{"title":521,"links":522},"Contact Us",[523,526,528,530,535,540,545],{"text":524,"config":525},"Contact sales",{"href":49,"dataGaName":50,"dataGaLocation":486},{"text":378,"config":527},{"href":380,"dataGaName":381,"dataGaLocation":486},{"text":383,"config":529},{"href":385,"dataGaName":386,"dataGaLocation":486},{"text":531,"config":532},"Status",{"href":533,"dataGaName":534,"dataGaLocation":486},"https://status.gitlab.com/","status",{"text":536,"config":537},"Terms of use",{"href":538,"dataGaName":539,"dataGaLocation":486},"/terms/","terms of use",{"text":541,"config":542},"Privacy statement",{"href":543,"dataGaName":544,"dataGaLocation":486},"/privacy/","privacy statement",{"text":546,"config":547},"Cookie preferences",{"dataGaName":548,"dataGaLocation":486,"id":549,"isOneTrustButton":103},"cookie preferences","ot-sdk-btn",{"title":102,"links":551,"subMenu":559},[552,556],{"text":553,"config":554},"DevSecOps platform",{"href":67,"dataGaName":555,"dataGaLocation":486},"devsecops platform",{"text":125,"config":557},{"href":74,"dataGaName":558,"dataGaLocation":486},"ai-assisted development",[560],{"title":561,"links":562},"Topics",[563,568,573,578,583,588,593,598],{"text":564,"config":565},"CICD",{"href":566,"dataGaName":567,"dataGaLocation":486},"/topics/ci-cd/","cicd",{"text":569,"config":570},"GitOps",{"href":571,"dataGaName":572,"dataGaLocation":486},"/topics/gitops/","gitops",{"text":574,"config":575},"DevOps",{"href":576,"dataGaName":577,"dataGaLocation":486},"/topics/devops/","devops",{"text":579,"config":580},"Version Control",{"href":581,"dataGaName":582,"dataGaLocation":486},"/topics/version-control/","version control",{"text":584,"config":585},"DevSecOps",{"href":586,"dataGaName":587,"dataGaLocation":486},"/topics/devsecops/","devsecops",{"text":589,"config":590},"Cloud Native",{"href":591,"dataGaName":592,"dataGaLocation":486},"/topics/cloud-native/","cloud native",{"text":594,"config":595},"AI for Coding",{"href":596,"dataGaName":597,"dataGaLocation":486},"/topics/devops/ai-for-coding/","ai for coding",{"text":599,"config":600},"Agentic AI",{"href":601,"dataGaName":602,"dataGaLocation":486},"/topics/agentic-ai/","agentic ai",{"title":604,"links":605},"Solutions",[606,608,610,615,619,622,626,629,631,634,637,642],{"text":146,"config":607},{"href":141,"dataGaName":146,"dataGaLocation":486},{"text":135,"config":609},{"href":117,"dataGaName":118,"dataGaLocation":486},{"text":611,"config":612},"Agile development",{"href":613,"dataGaName":614,"dataGaLocation":486},"/solutions/agile-delivery/","agile delivery",{"text":616,"config":617},"SCM",{"href":131,"dataGaName":618,"dataGaLocation":486},"source code management",{"text":564,"config":620},{"href":123,"dataGaName":621,"dataGaLocation":486},"continuous integration & delivery",{"text":623,"config":624},"Value stream management",{"href":174,"dataGaName":625,"dataGaLocation":486},"value stream management",{"text":569,"config":627},{"href":628,"dataGaName":572,"dataGaLocation":486},"/solutions/gitops/",{"text":184,"config":630},{"href":186,"dataGaName":187,"dataGaLocation":486},{"text":632,"config":633},"Small business",{"href":191,"dataGaName":192,"dataGaLocation":486},{"text":635,"config":636},"Public sector",{"href":196,"dataGaName":197,"dataGaLocation":486},{"text":638,"config":639},"Education",{"href":640,"dataGaName":641,"dataGaLocation":486},"/solutions/education/","education",{"text":643,"config":644},"Financial services",{"href":645,"dataGaName":646,"dataGaLocation":486},"/solutions/finance/","financial services",{"title":204,"links":648},[649,651,653,655,658,660,662,664,666,668,670,672,674],{"text":216,"config":650},{"href":218,"dataGaName":219,"dataGaLocation":486},{"text":221,"config":652},{"href":223,"dataGaName":224,"dataGaLocation":486},{"text":226,"config":654},{"href":228,"dataGaName":229,"dataGaLocation":486},{"text":231,"config":656},{"href":233,"dataGaName":657,"dataGaLocation":486},"docs",{"text":254,"config":659},{"href":256,"dataGaName":5,"dataGaLocation":486},{"text":249,"config":661},{"href":251,"dataGaName":252,"dataGaLocation":486},{"text":258,"config":663},{"href":260,"dataGaName":261,"dataGaLocation":486},{"text":271,"config":665},{"href":273,"dataGaName":274,"dataGaLocation":486},{"text":263,"config":667},{"href":265,"dataGaName":266,"dataGaLocation":486},{"text":276,"config":669},{"href":278,"dataGaName":279,"dataGaLocation":486},{"text":281,"config":671},{"href":283,"dataGaName":284,"dataGaLocation":486},{"text":286,"config":673},{"href":288,"dataGaName":289,"dataGaLocation":486},{"text":291,"config":675},{"href":293,"dataGaName":294,"dataGaLocation":486},{"title":309,"links":677},[678,680,682,684,686,688,690,694,699,701,703,705],{"text":316,"config":679},{"href":318,"dataGaName":311,"dataGaLocation":486},{"text":321,"config":681},{"href":323,"dataGaName":324,"dataGaLocation":486},{"text":329,"config":683},{"href":331,"dataGaName":332,"dataGaLocation":486},{"text":334,"config":685},{"href":336,"dataGaName":337,"dataGaLocation":486},{"text":339,"config":687},{"href":341,"dataGaName":342,"dataGaLocation":486},{"text":344,"config":689},{"href":346,"dataGaName":347,"dataGaLocation":486},{"text":691,"config":692},"Sustainability",{"href":693,"dataGaName":691,"dataGaLocation":486},"/sustainability/",{"text":695,"config":696},"Diversity, inclusion and belonging (DIB)",{"href":697,"dataGaName":698,"dataGaLocation":486},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":349,"config":700},{"href":351,"dataGaName":352,"dataGaLocation":486},{"text":359,"config":702},{"href":361,"dataGaName":362,"dataGaLocation":486},{"text":364,"config":704},{"href":366,"dataGaName":367,"dataGaLocation":486},{"text":706,"config":707},"Modern Slavery Transparency Statement",{"href":708,"dataGaName":709,"dataGaLocation":486},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":711},[712,714,716],{"text":536,"config":713},{"href":538,"dataGaName":539,"dataGaLocation":486},{"text":541,"config":715},{"href":543,"dataGaName":544,"dataGaLocation":486},{"text":546,"config":717},{"dataGaName":548,"dataGaLocation":486,"id":549,"isOneTrustButton":103},"content:shared:en-us:main-footer.yml","Main Footer","shared/en-us/main-footer.yml","shared/en-us/main-footer",[723],{"_path":724,"_dir":725,"_draft":6,"_partial":6,"_locale":7,"content":726,"config":730,"_id":732,"_type":26,"title":18,"_source":28,"_file":733,"_stem":734,"_extension":31},"/en-us/blog/authors/marcia-ramos","authors",{"name":18,"config":727},{"headshot":728,"ctfId":729},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659488/Blog/Author%20Headshots/gitlab-logo-extra-whitespace.png","Marcia-Ramos",{"template":731},"BlogAuthor","content:en-us:blog:authors:marcia-ramos.yml","en-us/blog/authors/marcia-ramos.yml","en-us/blog/authors/marcia-ramos",{"_path":736,"_dir":34,"_draft":6,"_partial":6,"_locale":7,"header":737,"eyebrow":738,"blurb":739,"button":740,"secondaryButton":744,"_id":746,"_type":26,"title":747,"_source":28,"_file":748,"_stem":749,"_extension":31},"/shared/en-us/next-steps","Start shipping better software faster","50%+ of the Fortune 100 trust GitLab","See what your team can do with the intelligent\n\n\nDevSecOps platform.\n",{"text":42,"config":741},{"href":742,"dataGaName":45,"dataGaLocation":743},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":47,"config":745},{"href":49,"dataGaName":50,"dataGaLocation":743},"content:shared:en-us:next-steps.yml","Next Steps","shared/en-us/next-steps.yml","shared/en-us/next-steps",{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":751,"content":752,"config":754,"_id":25,"_type":26,"title":27,"_source":28,"_file":29,"_stem":30,"_extension":31},{"title":9,"description":10,"ogTitle":9,"ogDescription":10,"noIndex":6,"ogImage":11,"ogUrl":12,"ogSiteName":13,"ogType":14,"canonicalUrls":12,"schema":15},{"title":9,"description":10,"authors":753,"heroImage":11,"date":19,"body":20,"category":21},[18],{"slug":23,"featured":6,"template":24},1761814419900]