Nola-Devs-v2 Svelte Themes

Nola Devs V2

New Orleans' Tech Community's central meetup and event listing page.

Nola Devs

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

What is this?

This is a website for Nola Devs, a community made up of New Orleanian software developers, tech workers, and tech enthusiasts.

Who is this for?

The purpose of this app is to be a central event hub for the local NOLA dev community. Locals can check the event list to stay active in the community and visitors can get the inside information on what the NOLA tech community is up to.

Submitting an event

Meetup organizers can submit an event with the noladevs eventbot in the community Slack.

If you have a new group you want to establish, please leave a message on the #general channel in the community Slack or create an issue on the repository for the site. We will respond shortly after.

Contribute

To contribute please follow the contributing guide.


Tech Stack


Set up

Environment Variables

name env key env value dependent features
MongoDB Database name DB_NAME noladevs app
MongoDB URI MONGODB_URI ex: mongodb://localhost:27017 or other valid connection string app
Ding Dong Endpoint PUBLIC_DINGDONG_HOST Endpoint handling Ding Dong requests Doorbell
Ding Dong Phrase PUBLIC_DINGDONG_PHRASE Used in POSTs to Ding Dong endpoint Doorbell
Slack App Token SLACK_BOT_TOKEN Token generated by Slack after installing to dev workspace. noladevs eventbot

The MongoDB variables are the only ones needed to get up and running. The others are only needed if you are directly working on those features.

Development Environment

  1. Install mongodb v7.x.x Community Edition if not already installed locally or set up a free-tier MongoDB Atlas cluster.

    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 🥸

noladevs eventbot

If you're working on the Slack app (thank you brave soul 🙏), there are a few extra steps.

  1. Create your own Slack workspace (makes dev easy and sandboxed).
  2. Create a test app with the manifest in slackbot-config.json.
  3. Install the app to your workspace.
  4. Run the noladevs app, npm run dev.
  5. Create a Cloudflare Tunnel to your dev instance, npx cloudflared tunnel --url http://localhost:<PORT>/.
  6. Edit the Request URLs in the manifest in the Slack portal. a. Copy the URL from the Cloudflare Tunnel (https:// ... .trycloudflare.com). b. Paste over the two <INSERT YOUR URL HERE> strings.
  7. Copy the "Bot User OAuth Token" in the "Install App" section into your SLACK_BOT_TOKEN environment variable.
  8. Run the /event slash command in your Slack workspace, take it for a spin.

Production Environment

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.

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

Top categories

Loading Svelte Themes