Skip to content

Commit

Permalink
Merge pull request #56 from BU-Spark/dev
Browse files Browse the repository at this point in the history
Dev
  • Loading branch information
jasonjiang9142 authored Jun 28, 2024
2 parents 8af6f40 + 1383d7b commit 1e5f27d
Show file tree
Hide file tree
Showing 104 changed files with 29,446 additions and 4 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@

**/node_modules


# Jetbrains Products
Expand Down Expand Up @@ -168,3 +168,4 @@ $RECYCLE.BIN/

# .nfs files are created when an open file is removed but is still being accessed
.nfs*
node_modules
3 changes: 3 additions & 0 deletions COLLABORATORS
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
eelkus01
Arshnoorkc13
jasonjiang9142
102 changes: 99 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,102 @@
# TEMPLATE-base-repo

# Add Users
To add yourself to the repository, open a Pull Request modifying `COLLABORATORS`, entering your GitHub username in a newline.
# Boston Voter App
Collaborators:
* Arshnoor Kaur Chadha; Github: @arshnoorKC13
* Eleanor Elkus; Github: @eelkus01
* Jason Jiang; Github: @jasonjiang9142

All Pull Requests must follow the Pull Request Template, with a title formatted like such `[Project Name]: <Descriptive Title>`
# Description
The Boston Voter App addresses the lack of accessible information about voting logistics and candidates in municipal elections in Boston. This progressive web application centralizes all vital voting information to increase voter turnout, particularly focusing on BIPOC voters who face significant barriers to voting in local elections.

# Problem Statement
Many news organizations provide articles or voting guides around the election, but they are often difficult to find, last minute, and represent a narrow perspective around candidates. Additionally, most election resources are around larger races with little coverage or few resources available for local elections, where candidates have the potential to impact people’s lives more directly. BIPOC voters often have the lowest voting rates, especially in municipal elections, for a variety of reasons including lack of information and logistical barriers such as work hours and family duties. This project aims to remedy that for BIPOC voters in Boston.

# Solution
The Boston Voter App provides a comprehensive solution by offering:
* Centralized voting information for Boston municipal elections.
* Detailed candidate profiles, including information about them and ballot initiatives.
* Voting logistics, including polling locations and hours.
* Features to find the nearest polling booth locations.
* Information about upcoming elections.
* Tools and resources to help voters navigate logistical barriers, ultimately aiming to increase BIPOC voter turnout.

# Installation
1. Clone the repository:
```bash
git clone https://github.com/BU-Spark/pitne-voter-app.git
cd pitne-voter-app
```

2. Install dependencies:
```bash
npm install
```

3. Navigate to the client directory, install dependencies, and start client server
```bash
cd client
npm install
npm run dev
```

4. On another terminal, navigate to the server directory, install dependencies, and start Server:
```bash
cd server
npm install
npm run dev
```

5. On another terminal, navigate to the Strapi directory, install dependencies, and start Strapi server:
```bash
cd strapi
npm install
npm start
```



## Environment Variables
Create a `.env` file in the `server` directory (`cd server`) and add the following environment variables:

```plaintext
GOOGLE_CIVIC_API_KEY=your_api_key_here
```


# Deployment
Access our deployed website through netlify at https://pitne-voter.netlify.app.

Status of Deployment:
[![Netlify Status](https://api.netlify.com/api/v1/badges/2475ff74-781c-4ac2-b8c6-3966fa276ea6/deploy-status)](https://app.netlify.com/sites/pitne-voter/deploys)

# Collaborators
* Arshnoor Kaur Chadha; Github: @arshnoorKC13
* Elenaor Elkus; Github: @eelkus01
* Jason Jiang; Github: @jasonjiang9142


# SnapShots

**Ability to see Upcoming Elections from Strapi CMS input**

<img width="1440" alt="Screenshot 2024-06-28 at 12 12 58 PM" src="https://github.com/BU-Spark/pitne-voter-app/assets/69778744/95c25d88-d41a-4964-975a-efd1a68adaa4">

**Comprehensive List of all possible Voting Options**, including direct links from government websites

<img width="1440" alt="Screenshot 2024-06-28 at 12 14 22 PM" src="https://github.com/BU-Spark/pitne-voter-app/assets/69778744/82d8f3ff-138e-4063-91b1-08c5ae4bd76d">

**Ability to see information about candidates for a selected election and district number**

<img width="1440" alt="Screenshot 2024-06-28 at 12 15 53 PM" src="https://github.com/BU-Spark/pitne-voter-app/assets/69778744/14e4c319-a8d7-4b38-bc06-2ee1644e0e44">

<img width="1440" alt="Screenshot 2024-06-28 at 12 16 07 PM" src="https://github.com/BU-Spark/pitne-voter-app/assets/69778744/11e78484-7ec8-40c2-a44d-45799712b9ed">

<img width="1440" alt="Screenshot 2024-06-28 at 12 16 31 PM" src="https://github.com/BU-Spark/pitne-voter-app/assets/69778744/56e64008-8bcc-40b5-8cbd-ae4ba9896f7b">

**Ability to information for all polling locations in Boston and nearest ones for a given address**

<img width="1440" alt="Screenshot 2024-06-28 at 12 17 49 PM" src="https://github.com/BU-Spark/pitne-voter-app/assets/69778744/70f92823-08cc-4a2b-a539-2fb253b3be82">

<img width="1440" alt="Screenshot 2024-06-28 at 12 19 35 PM" src="https://github.com/BU-Spark/pitne-voter-app/assets/69778744/6f1b3dc5-fb7e-44e7-a357-74d6e084fcc3">
3 changes: 3 additions & 0 deletions client/.eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"extends": "next/core-web-vitals"
}
36 changes: 36 additions & 0 deletions client/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.js
.yarn/install-state.gz

# testing
/coverage

# next.js
/.next/
/out/

# production
/build

# misc
.DS_Store
*.pem

# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# local env files
.env*.local

# vercel
.vercel

# typescript
*.tsbuildinfo
next-env.d.ts
36 changes: 36 additions & 0 deletions client/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).

## Getting Started

First, run the development server:

```bash
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
```

Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.

You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.

This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.

## Learn More

To learn more about Next.js, take a look at the following resources:

- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.

You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome!

## Deploy on Vercel

The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.

Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.
9 changes: 9 additions & 0 deletions client/netlify.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
[build]
command = "npm run build"
publish = ".next"

[[plugins]]
package = "@netlify/plugin-nextjs"

[functions]
directory="netlify/functions"
4 changes: 4 additions & 0 deletions client/next.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
/** @type {import('next').NextConfig} */
const nextConfig = {};

export default nextConfig;
Loading

0 comments on commit 1e5f27d

Please sign in to comment.