Skip to content

Latest commit

 

History

History
74 lines (50 loc) · 3.46 KB

README.md

File metadata and controls

74 lines (50 loc) · 3.46 KB

Kobra

drawing

A visual programming language (like Scratch) for Machine Learning

Build Status - Cirrus Twitter handle Discord Chat

Getting started

To get started, go to Kobra Studio.

More in-depth info can be found on our website and in the documentation.

Development

Local Environment Setup:
  1. git clone https://github.com/kobra-dev/Kobra
  2. cd Kobra/
  3. yarn
  4. yarn dev
Environment variables

All environment variables should go in a .env.local file at the root of the project directory. If you're developing Kobra with our infrastructure, you can use these environment variables (they're all public, so don't worry about us putting them here):

NEXT_PUBLIC_GQL_URI=https://api.cr.kobra.dev/

NEXT_PUBLIC_FIREBASE_API_KEY=AIzaSyBeiMHtIRQQB-VXcwhV5qbcwWslZ3mjAW8
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=kobra1.firebaseapp.com
NEXT_PUBLIC_FIREBASE_PROJECT_ID=kobra1

NEXT_PUBLIC_APP_HOSTED_URL=http://localhost:3000/
NEXT_PUBLIC_DATASET_API=https://datasets-api.cr.kobra.dev/dataset

Otherwise, here are the descriptions of the environment variables:

  • NEXT_PUBLIC_GQL_URI: URL to GraphQL API (see the API repository)
  • Firebase details:
    • NEXT_PUBLIC_FIREBASE_API_KEY
    • NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN: Firebase project domain (like kobra1.firebaseapp.com)
    • NEXT_PUBLIC_FIREBASE_PROJECT_ID: like kobra1
  • NEXT_PUBLIC_APP_HOSTED_URL: URL that the app is being hosted at (used to generate the URL to copy to your clipboard when you click share)
  • NEXT_PUBLIC_DATASET_API: URL to the dataset API (see the dataset API repository)
GraphQL codegen

We use GraphQL Code Generator to generate types and functions for our GraphQL API. To run the tool, use yarn gql-codegen. By default this uses our instance of the API but you can change it in the codegen.yml file.

Other core repositories

Contributing

We appreciate your help! Before contributing, we highly recommend discussing potential changes with our team on our Discord server!