GithubHelp home page GithubHelp logo

isabella232 / ca-go Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cultureamp/ca-go

0.0 0.0 0.0 156 KB

A Go library with multiple packages to be shared by services.

License: MIT License

Dockerfile 0.34% TypeScript 5.15% Makefile 0.72% Go 93.79%

ca-go's Introduction

ca-go

A Go library with multiple packages to be shared by services.

Decisions

  • This library is designed to be a replacement of the old Go library: cultureamp/glamplify.
    • Creating a glamplify V2 is not easier than creating a new repo.
    • But having a new repo can allow us using both libraries together for a while so we don’t have to do the migration at the beginning.
  • It's created as a public repository.
    • We won't put packages that can't be public in at this stage. Although we might do that in the future.
    • Make this repo internal is not that easy due to the way we config BuildKite.
    • Too much effort for the library users update their config and get the private packages.
  • This repo will only have one go.mod so we can't version control them separately.
    • There is no package registry like npm for Go. Can't really do version control separately.

Migrate approach:

  • Create cultureamp/ca-go as a public repo
  • Start to move some packages from the shims repo here. e.g. /ref. Keep using glamplify for existing packages.
  • Start to move packages from glamplify to here. Stop using glamplify when all packages are migrated.
  • Make this repo internal.

Contributing

To work on ca-go, you'll need a working Go installation. The project currently targets Go 1.17.

Setting up your environment

You can use VSCode Remote Containers to get up-and-running quickly. A basic configuration is defined in the .devcontainer/ directory. This works locally and via GitHub Codespaces.

Locally:

  1. Clone ca-go and open the directory in VSCode.
  2. A prompt should appear on the bottom-right of the editor, offering to start a Remote Containers session. Click Reopen in Container.
  3. If a prompt didn't appear, open the Command Palette (i.e. Cmd + Shift + P) and select Remote-Containers: Open Folder in Container...

Codespaces:

  1. Click the Code button above the source listing on the repository homepage.
  2. Click New codespace.

ca-go's People

Contributors

aimeegee avatar disposedtrolley avatar jamestelfer avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.