Skip to content
/ Doors Public

Measure event turnout without looking corporate. Built with React Native, Nativewind, and Firebase

License

Notifications You must be signed in to change notification settings

aleguy02/Doors

Repository files navigation

GitHub Socialify image

Doors 🚪

Tech Stack Understanding the Code Base Roadmap Getting Started Architecture/Design

Doors is a mobile app for independent bands looking to measure event turnout without looking corporate. Its simple setup enables low-resource bands to easily measure the success level of their gigs based on audience turnout over time.

View Repo

Tech Stack

My Skills ... and more!

  • NPM for package management
  • TypeScript because we love typechecking
  • React Native to build for all platforms
  • Nativewind because scaling CSS is tedious
  • Firebase for simpler authentication
  • Firestore for flexibility with data and easy scaling
  • Expo Go for an integrated environment and intuitive routing
  • Jest to create a comprehensive testing suite

Understanding the Code Base

Project Directories

doors/
├── app                      # special routes directory/
│   ├── (auth)                 # authentication route
│   ├── (tabs)                 # home screens route
│   └── (user)                 # user settings route/
│       └── managebands          # managing bands route
├── assets                   # static assets/
│   └── icons                  # app icons
└── src                      # main app logic/
    ├── components             # custom react native components/
    │   ├── buttons              # custom buttons
    │   ├── modals               # custom modals
    │   └── screens              # all the different screens
    ├── configs                # app configurations
    ├── contexts               # custom react contexts
    ├── services               # business logic
    └── types                  # custom TypeScript types

The diagram above explains the file structure of the project. The get a better understanding of the codebase you can read the code. There are helpful comments and files peppered throughout the project.

Roadmap

Doors is currently still under construction. My goal is to achieve an MVP by mid May or early June before deploying to each platforms respective app store. To get a sense of the vision for the MVP, please take a look at the design files below

Getting Started

Follow these steps to set up Doors locally. Googling is encouraged if you get stuck on any step, or feel free to reach out to me directly!

Prerequisites

Cloning

After forking this repository, clone your fork and move into the newly cloned directory.

git clone FORKED_REPO_URL
cd cloned_repo

Starting

Create a new file called .env in the root directory. Copy all the contents inside .env_example and paste them into this new .env file. Finally, replace the empty credentials with the credentials found in the "Project settings" page in your Firebase console. Then...

Install dependencies

npm install

Then run Expo Go to test in development.

npm run start

Follow the instructions in your terminal to open Expo Go. If you are having trouble opening the app with npm run start try npm run tunnel.

Issues

Though I started Doors as a solo project, community contributions are welcome! Check out the GitHub Issues tab to see open issues and feel free to work on any! Please make sure to follow the coding style and put any new files where they belong (see file structure above). Make your changes on a new branch in your fork and when you're ready, open a pull request.

⚙Architecture/Design

💡 Initial Brainstorm Page

🎨 Figma Design Page


This README.md was drafted using a template from makeread.me

About

Measure event turnout without looking corporate. Built with React Native, Nativewind, and Firebase

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published