After several years of being dissatisfied with existing group event tools (Meetup, Facebook events) we decided to build our own.
This will be a self-hosted Docker container deployed to the cloud with a one-click and then configured by the owner. No coding required.
Your organization can host an instance of Chapter under a sub-domain of your website, such as chapter.sierraclub.org
or chapter.womenwhocode.org
.
All of an organization's user data will remain under their control.
Our Vision statement provides more details on the reasons for Chapter.
To better communicate and more easily build an API and UI, the current contributors have decided on a collection of terminology to clarify discussions surrounding the Chapter project:
Term | Definition | Example |
---|---|---|
instance | a web server deployment of the Chapter application, managed by an organization. | a Docker container running on a web host |
organization | a non-profit with multiple chapters | Women Who Code at the sub-domain: chapter.womenwhocode.org |
chapter | a container for events and users | Women Who Code - New York City |
event | a meeting with a specific location and time to which users can RSVP | Coffee And Code - BistroOne, New York City, NY - April 9, 2020 |
user | an authenticated user who is authorized based on their role(s) | Sally Gold - SallyG@example.com |
visitor | an non-authenticated web browser session with view-only access to public content | Anonymous Web Browser Client |
owner | the role of a user who can configure the Chapter application instance and manage administrators for an entire organization | Women Who Code - Global IT |
administrator | the role of a user who can setup and manage chapters and organizers for an organization | Women Who Code - European Administrator |
organizer | the role of a user who can manage a chapter's events, RSVPs, communications, and members | Women Who Code - Edinburgh, Local Organizer |
member | the role of a user who can follow and receive notifications from a chapter and RSVP to events | Women Who Code - Edinburgh, Local Member |
We are using the following tools:
- Node.js / Apollo server - extendable graphql server
- type-graphql - code first graphql schema definition library
- Postgres with TypeORM - for nice integration with
type-graphql
- Next.js - for both client and server-side rendering of the frontend (NextJS is based on React)
- Apollo Client 3
- TypeScript
- Chakra-UI - for styling + super easy DSL for custom css (we still have some legacy MUI stuff that's being removed #608)
- Functional Components with Hooks
- chai - for writing unit tests.
The MVP user stories are shown in the MVP Project kanban / cards and as issues marked with "MVP".
We are maintaining a list of post-MVP conversations and user stories using the "Roadmap" tag.
Quincy Larson is the project lead. freeCodeCamp will start "dogfooding" the MVP with several of its local study groups.
-
Please read the contributing guidelines and steps needed to setup Chapter locally. We take you from local setup to submitting pull requests.
-
Join our chat to get connected and follow announcements.
Copyright Β© 2021 freeCodeCamp.org
The computer software is licensed under the BSD-3-Clause license.
Thanks goes to these wonderful volunteers (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!