Skip to content
This repository has been archived by the owner on Apr 25, 2023. It is now read-only.

Code-4-Community/monarch

Repository files navigation

Archived! Monarch now lives in the everything monorepo.


🦋 Monarch 🦋

❤️ About the People

Code4Community's newest project with Lucy's Love Bus.

Monarch is our internal code name for the prototype application we are developing to create a central hub for practitioners of integrative therapy. Our online search network will allow families across New England to discover which practitioners are in their area.

ℹ About the Tech

This project a monorepo with three major subdirectories. Navigate to each of them (linked below) for a more specific README with technical details.

The software system is composed of five major components/libraries:

  1. frontend : A web "frontend" client. The primary concern of this component is presentation code. This part of the system is built in React and Typescript, bundled as a single page application.
  2. backend : A web "backend" server. The primary concern of this component is exposing a HTTP interface to the data and core business logic of the search network.
  3. common : Common units shared by and bundled with both of the above independent applications.
  4. A database to securely store application data (AWS DynamoDB).
  5. An authentication service to store user login information and issue auth tokens (AWS Cognito)

Component Diagram

There's many more of course, but for a high level overview these 4.5 components are all you really need to be aware of.

🔨 Development

1. Install Node v16.x

2. Clone this repo

3. Install dependencies, setup env

Go to the project root and run:

npm install

then, copy .env.example into .env

Fill in the blanks with the appropriate information. Ask the team directly for details.

⚠️ This is sensitive C4C information so don't leak it!

4. Serve the application

The simplest way to run both frontend and backend in a single terminal is:

nx run-many --parallel --target=serve --all

But you can run whatever `nx ...` command you want!

#### 5. Make changes, test, and commit!

Write tests, run tests!

```sh
nx run-many --target=test --all

Ideally commit using Conventional Commit style. Emojis optional but always encouraged.


This workspace has been generated by Nx, a Smart, fast and extensible build system.

Understand this workspace

Run nx graph to see a diagram of the dependencies of the projects.

Remote caching

Run npx nx connect-to-nx-cloud to enable remote caching and make CI faster.

Further help

Visit the Nx Documentation to learn more.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages