Inspiration

In the time before the internet, the people of America were much more observant of the inner workings of their city, with personal and local politics taking a good chunk of American citizen's view. Once the internet started to spread about, view of the national situation became more prominent and central to information, overwhelmingly so compared to before. With the death of the local town paper, the flow of information has become centralized into very few points for local towns, if any at all. When information moves at the speed of town, small town news becomes clouded out by major national headlines. Because of this, we have felt that it is necessary for proper democratic processes to further amplify local communication for the sake of more genuine elections and good informational flow. One of our team members personally witnessed the struggle that Stone County Missouri had in getting an ambulance district, and was exposed to the importance of local elections -- so to solve this, we have created Poli.

What it does

Poli enables local communication by offering slow paced chat forms that include upcoming events, elections, and a general board for the city and its news. By having all posts be processed centering around a city value, it allows for people to really figure out what is happening within their city, without the cloud of global news.

How we built it

We started by building the database utilizing MongoDB to create collections for posts and users, due to it storing the data as JSON and having the ability to expand. For the user interface Logan and Gabe did the primary work, creating gradients and other visual effects. Nate and Nick worked primary on the back end, linking the user interface to MongoDB and working on the location based aspects.

Challenges we ran into

Our primary challenges where separate from the raw code, and instead with external resources

  1. Getting a .tech domain
    1. Website was not letting us register
    2. Wouldn't let us get the domain we really wanted (poli.tech)
  2. Getting MongoDB to properly fetch
    1. Just took some time to work out the kinks
  3. Inexperience with server work
    1. We were new to cloud hosting
    2. Took a while to get things all connected

Many of our individual teammates struggled with aspects they hadn't experienced before, which we will address further in the next two sections.

Accomplishments that we're proud of

This competition was our first major project together and our first Hackathon. The stuff we've learnt here so quickly and on the fly is also something we are proud of and will be carrying out of the competition. Creating a full working website in such a short time using foreign (to us) technology is something we're excited and proud of being capable to do. The main thing we're proud of is how well our team was able to synchronize and work together despite not doing much work together prior.

What we learned

Nate:

  • The only team member who doesn't often work in java script - more often in C and Python - he inherently had to learn a lot on the stuff to work on the project
  • Along with others on the team, he did not have a lot of work on servers, and cloud computing was completely new for him
  • Got to learn about authentication on websites and the communication between the client and server relating to databases

Nick:

  • Zero experience with servers, node.js, or mongo, learnt a ton about mongo doing a lot of the back-end work, along with node.js.
  • Developed JavaScript knowledge coming from a mainly lower-level language background with very little web interaction.

Logan:

  • Learnt a lot about the Git CLI.
  • Learnt how to work on a team

Gabe:

  • Probably learnt the most about the Git CLI.
  • How to center a div
  • General CSS knowledge (mostly worked on just canvases before, for games and such)

What's next for Poli?

We are very barebones right now and in the future we want to add a system similar to X's Community Notes as a feature on posts, as well as comments (which we have 99% of the functionality to create right now). We also would like to develop and are close to developing further user profile customization with profile pictures and outright profile pages, rather than being just an name attached to posts.

Share this project:

Updates