Skip to content

codingMustache/Nola-Devs-v2

 
 

Repository files navigation

Nola Devs

    _   ______  __    ___       ____
   / | / / __ \/ /   /   |     / __ \___ _   _______
  /  |/ / / / / /   / /| |    / / / / _ \ | / / ___/
 / /|  / /_/ / /___/ ___ |   / /_/ /  __/ |/ (__  )
/_/ |_/\____/_____/_/  |_|  /_____/\___/|___/____/

What is this?

This is a website for Nola Devs, an organization made up of New Orleanian Software Developers. It serves as a hub for many other local organizations and meetups.

This application hosts individual group sites, events, and contact information for New Orleans-based Software Development, Tech, Networking, Design... etc. groups.

MVP is currently live at this domain: https://www.noladevs.org/.

Who is this for?

The purpose of this app is to be a central hub for for the NOLA dev community

Contribute

To contribute please follow the contributing guide.


Tech Stack


Set up

Development Environment

  1. Install mongodb v7.x.x Community Edition if not already installed locally.

    1. Mac
      1. Start the database
    2. Windows
      1. Start the database
  2. Copy example env to get local up and running.

cp .env.example .env.local

Note: On node >=17, you'll need to replace localhost with 0.0.0.0 (src)

  1. Install Dependencies and seed Database
npm i
npm run seed
  1. Start app. It will run the web app in a development node environment, meaning that it will not load any external resources which may require secrets (API Keys, etc).
npm run dev
  1. You now should be up and running to start developing 🥸

Production Environment

API Keys you will need

name env key env value
Google Calendar API CAL Follow these steps
Discord Webhook URL DISCORD Apply for Contributor Access if you don't have it already.
Mapbox Public API Key PUBLIC_MAPBOX Follow these steps
Cron Secret CRON_SECERT This is an arbitary value, For local testing set and use in Postman or other API testing tool
mongodb name DB_NAME noladevs
mongodb URL MONGO_URL mongodb://localhost:27017/
Discord Webhook URL DISCORD_WEBHOOK_URL A webhook Channel URL

Make sure you have created the above keys with provided values or your own where indicated. Once you have both created (copy .env.example) and added to your .env.local file (or any other equivalent environment variable system), you can actually deploy it. (instructions in hyperlinks)

Instead of just running in the development environment, now the site will be built and then served (which is how it would run on Vercel).

To run the production environment, simply run these commands (and have environment variables populated).

npm i
npm run build
npm run preview

API Key Instructions (where applicable):

Google Calendar API Key

Docs

Basic Abridged Guide:

  1. Go to the Google Cloud Console
  2. Create new project (call it anything you want)
  3. Navigate to API -> Library
  4. Search for Google Calendar API -> Enable it.
  5. Go to "Credentials", click "Create Credentials".
  6. Click API Key, fill out all of the required fields.
  7. Now put that API Key into your .env.local as CALENDAR_KEY

Mapbox Public Key

Basic Abridged Guide:

  1. Head over to Mapbox
  2. Make an account
  3. Use a Public key

Note

if your api key doesn't start with pk it isn't the right one

About

Redesign of the Nola Dev Site

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 41.8%
  • Svelte 33.7%
  • CSS 21.2%
  • JavaScript 2.6%
  • HTML 0.7%