Updating AKASHA.org

Whenever you change anything on the structure of AKASHA.org, please update this page accordingly.

Overview

  • Our website is powered by Gatsby, an open source framework based on React.

  • The website's source can be found on the GitHub repository akasha.org.

  • Words and expressions included in the Glossary are automatically highlighted wherever they appear in the website (except for pages under subdomains!)

  • The website is composed of multiple components, which allows us to easily update the existent pages, as well as re-using these components in different pages, and create new pages with the same components. Check "Templates" below for more details.

  • The website is integrated with certain Google Calendars to display upcoming events. Check "Integrated Calendars" below for more details.

  • The Style Guide and the Playbook use a different engine. Check their own How-tos.

Gatsby

Gatsby's documentation can be found on their website.

To learn how to hack with Gatsby, we recommend starting with their in-depth tutorial for creating a site with Gatsby. It starts with zero assumptions about your level of ability and walks you through every step of the process.

Integrated Calendars

There's a website component called "Events" that displays upcoming events according to certain Google Calendars. The component is being used in a few different pages, and according to each specific page it might be linked to a different Google Calendar.

Check Shared Calendars for more details.

Add an anchor

  • To add a new anchor, go to the folder /src/components. There, you will find the website's components grouped in different folders.

  • Find the component you want to add the anchor to, e.g. #footer, and access the correspondent folder.

  • Open the file named view.tsx or, in case this component does not have this file, open the file index.tsx instead.

  • Find the section you want to add the anchor to, e.g:

return (
<Footer>
  • Add the name of anchor as an id, e.g. id="footer"

return (
<Footer id="footer">
  • Follow the repository workflow.

Add a new team member

  • To add a new team member to the Team section, edit the file /src/content/foudation/about.yml

  • Scroll to the team section and add the new team member by adding the following lines to the code, filled with the proper information:

- name: Mihai Alisie
description: Curious mind. Bitcoin Magazine creator & Ethereum co-founder. AKASHA founder. Futurescaping a Web of Mind. Winging it one day at a time.
image: team-mihaialisie #filename in images folder
social:
- https://www.reddit.com/user/mihaialisie
- https://twitter.com/mihaialisie
- https://github.com/MihaiAlisie
- https://www.linkedin.com/in/mihaialisie
  • Members are added to the list according to the chronological order they joined the core team.

  • Description: your mini-bio cannot exceed 140 characters, and within this limit you should be able to say something about yourself plus what you do at AKASHA. Check the others as reference.

  • Image: the name of the image file without extension/format.

  • Add the image file to the folder /akasha.org/src/images. The image should be square and have good resolution. The file cannot exceed XXX kb and it should be named according to the existing pattern: team-firstnamelastname.filetype. Check others as reference.

  • Social: if you would like to, add the URL(s) of your social network(s) as a list, one per line, and the respective icon(s) will appear automatically. Available icons are: AKASHA, Linkedin, Facebook, Reddit, Twitter, GitHub, Dribble, Medium, Discord, Keybase, personal website.

  • Follow the repository workflow.

Update the Glossary

  • To add a new term to the Glossary, go to the folder /src/content/glossary.

  • Enter the folder with the proper letter.

  • Create a new md file with the name of your term, e.g. akasha-dapp.md

  • The file should follow the template below. You can check the files of other terms beforehand as reference. Note: when you don’t have anything to add to Includes and/or Excludes fields, make sure that you don’t add a space on them, otherwise the space will be displayed)

  • Follow the repository workflow.

---
term: AKASHA DAPP
includes:
excludes:
short: A next-generation social media network powered by the Ethereum world computer. A next-generation social media network powered by the Ethereum world computer.A next-generation social media network powered by the Ethereum world computer.
---
A next-generation social media network powered by the Ethereum world computer and embedded into the Inter-Planetary File System (IPFS).

Update SEO information

  • To update existent SEO information, update the file /src/content/seo.yml. There, you will find the metadata related to each page.

  • If you're changing the name of existing pages or adding new pages to /src/content/seo.yml, you also need to update /src/images/share.png accordingly.

  • OG image, i.e. share.png, can be found in /src/images/share.png. Image must be a png file with the exact size 1200x600 px.

  • Follow the repository workflow.

Templates

You can see all components used in the website in the non-listed page akasha.org/website-template/, and you can find the respective code on /src/content/styleguide.yml.

If you want to use any of the component templates, you just need to copy, paste, and customize the respective code.

Images

  • Due to the parallax effects, images added to the website are automatically cut in 15%.

  • We use IMGBOT to automatically optimize all images added to the website.

Applying changes

To make any updates on AKASHA.org, you must apply your changes to a feature branch and open a pull request on GitHub. Remember to give a properly descriptive name to your feature branch and to explain your changes in the pull request. When the pull request is ready to be reviewed, apply the label waiting review