Giter Club home page Giter Club logo

generation-change's Introduction

The Generation Change Project

Hi ๐Ÿ‘‹ Welcome to The Generation Change Project, a website that allows educators (teachers, scout leaders and anyone that works or volunteers with young adults) to find local social action projects for their young people. ๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ

Our problem ๐Ÿค”

Generation Change is a charity with a mission to make social action a normal and ordinary part of growing up for the youth of the UK. After years of working in the sector and conducting research, director David Reed realised that young people and the people that work with them were keen to get involved in social impact projects, and projects were more than willing to have them - but often the methods of connecting them were poor or non existent. The need for a website that allows educators to easily search for local social action projects was evident, and he came to Founders & Coders to see if they could help him find an answer.

Team ๐Ÿคผโ€โ™‚๏ธ

Find our more about the team members and their roles in this project.

Getting Started ๐Ÿ

To download our project:

git clone [email protected]:fac-17/Generation-Change.git

cd Generation-Change

npm i

touch .env

To run the project locally:

netlify dev

Tech Stuff ๐Ÿ’ป

Read about what we're using and why in our tech stack and dependencies sections in the wiki.

Talking you through the project

This project was built over three week long sprints - the first was a design sprint, and this was followed by two build sprints.

Design Sprint

During this week, we refined our key user journey and our user stories. We also put together our prototypes.

We conducted user testing on networks of educators that already existed with our team - you can find an example of a questionnaire that was sent out here. Our project manager David also conducted some user research, and you can find the results of that here.

Build Sprint 1

What we've achieved:

  • We have managed to hide our Airtable API key using Lambda functions
  • We can display our data from our Airtable on the browser
  • We have some styling
  • We can map through our data and display the same data for different social action projects on the same page

What we're stuck on:

  • We have been trying to use Google Maps Javascript API, but we're struggling to find a way to hide the API key in a Lambda function. All the docs we've found suggest that the API key is supposed to be used on the front end, and we can't find anything that shows how to hide it on the back end. We think maybe it's because if it was on the backend we'd have to call the backend with every re-render. The Google Maps API description has it embedded in the front end (see code here) but we don't particularly want our API key to be visible. We are considering just moving to an open source maps API like Leaflet.
  • We haven't really found much info about how to use Google Maps or just a maps API with React Hooks.
  • At the moment, we are taking the postcode that has been entered into our Airtable and manually converting that to latitude and longitude, which we then store in our Airtable and use for our API calls. Obviously, this is laborious and we would love to be able to automate this - so someone can enter data into the Airtable, and the postcode they put in automatically gets converted into longitude and latitude. You can fnd out more by checking out this issue and maybe this issue, too.

Build Sprint 2

What we've achieved:

  • We have all the basic functionality we need for our MVP.
  • Leaflet Maps is working and we can display and add markers to the map.
  • Styling is getting there and just needs a bit of cleaning up ahead of handover with Product Manager on Friday.

What we're stuck on:

  • Two things that are really important for the map that we're working on today are:
    • Taking the postcode inputted into the searchbar and using that as the central point of our map.
    • Linking the markers on the map to the location of the results shown on the results page (so that each marker represents a result and shows its location).
  • If you enter your postcode on the landing page, and go to the results page, you'll see your results. However, if you then refresh the results page, you get an error. This happens on the details page too. We've created an issue for it here, which explains it a bit more in detail.

Screenshots:

generation-change's People

Contributors

gminova avatar xirusux avatar georgiamshaw avatar samjam48 avatar ddotreed avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.