Keyshade Alpha is launching April 30th 5:00 PM IST
Join our Launch Party
keyshade docs
GithubDiscordReddit
  • 👋What is keyshade?
  • Getting Started
    • Introduction
    • Adding your first secret and variable
    • Installing the CLI
    • Setting up your profile
    • Add keyshade to your project
    • Running your app
  • CLI
    • Introduction
    • Profile
    • Init
    • Workspace
    • Project
    • Environment
    • Run
    • Scan
  • 🥰CONTRIBUTING TO KEYSHADE
    • Summary
    • Design of our code
      • Organization of code
      • API
      • CLI
      • Web
      • Integrations
    • Prerequisites
    • Environment Variables
    • Setting things up
    • Running things locally
      • Running the API
      • Running the Web
      • Running the Platform
      • Running the CLI
      • API Testing
      • Docker Support
  • Internals
    • Architecture of keyshade
    • How the CLI works
Powered by GitBook
On this page
  • Packages under apps directory
  • Packages under packages directory

Was this helpful?

Edit on GitHub
  1. CONTRIBUTING TO KEYSHADE
  2. Design of our code

Organization of code

An insight into how our codebase is organized

PreviousDesign of our codeNextAPI

Last updated 10 months ago

Was this helpful?

In this section, we will discuss how our codebase is organized. We have tried to keep the codebase as modular as possible to make it easier for developers to understand and contribute to the project. Here are the packages, sub-packages, and how they all contribute to the project.

Packages under apps directory

The apps directory contains all the applications that are part of the project. Each application is a separate package and has its own package.json file. The applications are:

  • : The main API server that serves the REST API.

  • : The web application that serves the homepage.

  • : The CLI application that allows users to interact with the API and tap into live updates for their application.

  • : The platform application hosts the UI that allows users to do the actual work.

Packages under packages directory

The packages directory contains all the shared packages that are used across the applications. These packages are:

  • : Contains the custom ESLint configuration for the project.

  • : Contains the custom TypeScript configuration for the project.

Apart from the package.json files used in the individual packages, we also have a root level package.json file that contains the scripts to run the applications and the shared packages. This file also contains the dependencies that are shared across the applications.

🥰
api
web
cli
platform
eslint-config-custom
tsconfig