We are a research lab working with the goal of using data, tech, design and social science to strengthen the course of civic engagements in India. We work to harness the potential of open-source movement to enable citizens to engage better with public reforms. We aim to grow data and tech capacity of governments, nonprofits, think-tanks, media houses, universities etc to enable data-driven decision making at scale.
- Single landing page, with limited information around the work we do and the solutions we build.
- Someone with no prior knowledge of CivicDataLab can guage very little about our work and offerings.
- Lack of brand identity, only the company logo was accessible with limited information on our background and values.
- Our Bandhus didn't have a place to express themselves and showcase their work on the website.
- Multiple pages dedicated to different aspects or our offerings and work with a sector level classification.
- An about page explaining our approach the the work bringing in the 4 pillars; data, tech, desing and social science.
- Project level pages to share all the resources and context for individual projects.
- Individual pages for each Bandhu where they can highlight their work, favourite quotes and select accent colours.
🖼️ Framework: Gatsby
🎨 Styling: styled-components
✏️ Content source: markdown files inside the content folder
📊 Analytics: Google
Prerequisites: NodeJS must be installed on your machine.
- Clone this repo.
- Run
npm install --legacy-peer-depsto install dependencies. - Run
npm startto start the development server athttp://localhost:8000. - To build the website, run
npm run build. - To run the local build, run the following command:
npm run serve.
The website uses Decap CMS for managing content through a UI without editing markdown files directly.
- Start the Gatsby dev server:
npm start - In a separate terminal, start the Decap proxy server:
npx decap-server - Open
http://localhost:8000/admin/index.htmlin your browser - Click Login — no GitHub auth needed locally, it connects directly to your local files
Visit https://civicdatalab.in/admin/ and log in with your GitHub account.
You must have Write access to the
CivicDataLab/civicdatalab.github.iorepo to save content.
- Go to the repo on GitHub → Settings → Collaborators and teams
- Add the person's GitHub account with Write access
- They can now log into the CMS using their GitHub account
- Go to GitHub → Settings → Developer settings → OAuth Apps → New OAuth App
- Set Homepage URL to
https://civicdatalab.in - Set Authorization callback URL to
https://civicdatalab.in/admin/ - Copy the Client ID and update
app_idinstatic/admin/config.yml
The CMS login page (/admin/) has been customised:
- Splash screen — a full-page branded loading screen with the CivicDataLab logo (
/static/cdl_logo.png) is shown while the CMS loads, then fades out. - Login page logo — the default Decap logo is replaced with the CivicDataLab logo via the
logo_urlfield instatic/admin/config.yml. - Decap footer — the Decap attribution SVG at the bottom of the login page is hidden via a
MutationObserverinstatic/admin/index.html.
To update the logo, replace /static/cdl_logo.png and update the logo_url in static/admin/config.yml if the path changes.
| Collection | Content folder |
|---|---|
| Team Members | content/team/ |
| Alumni | content/alumnus/ |
| Work (by sector) | content/work/ |
| Events | content/events/ |
| Job Openings | content/openings/ |
| Values | content/values/ |
| Project Partners | content/projectpart/ |
You can find guides on how to add/update project and bandhu level info here.
The code is licensed under MIT License while the contents inside the content folder are licensed under CC-BY-4.0.
