# Agora Install

- To contribute to the [[Agora]], you need to write down notes or posts in [[Markdown format]] and upload your notes to a ***git repository*** of your choice. These steps are expanded below.
  - Get a [[github]] account if you don't have a git host already: <https://github.com>.
    - Install [[git]] if needed: <https://git-scm.com/download>.
  - If you don't have a [[personal knowledge management]] system of choice to manage your notes, we currently recommend [[foam]]: <https://foambubble.github.io/foam/> (see [[agora editor]] for alternatives). To use foam:
    - Fork its template repository: <https://github.com/foambubble/foam-template/>. You can use any name you desire for your repository.
    - Install [[vscode]] if necessary: <https://code.visualstudio.com/download>. Launch it.
    - Select 'clone repository' -- if you're using [[github]], log in with [[github]]. Authorize [[vscode]] to make changes to your account. It sometimes requires you to retry once for some reason.
      - [[vscode]] should offer to install recommended extensions. Say yes.
    - You can now use [[foam]]:
      - Press alt-d to start a new daily note (your journal). 
      - Write [[wikilinks]] to link to other pages. 
      - Control-click them to visit existing linked notes or create them if needed.
      - ctrl-p to open an existing note.
      - ctrl-shift-p to bring up the [[vscode]] command palete; you can search for any command and see keyboard shortcuts.
      - Whenever you want to commit to your repository (and the Agora), save all files and use the "branch-like" icon on the left toolbar to review changes and write a commit message.
      - You may need to set a user.name and user.email in git. To do this, open the terminal in [[vscode]] and type:
        - git config --global user.name "Your Name"
        - git config --global user.email "yourname@example.com"
- Then send email to signup@anagora.org or a Twitter DM to [[flancian]] with:
  - The URL of your repo.
  - Your desired username (can be distinct from that of your git host).
  - Confirmation that you agree to the Agora's [[contract]] (only the one by the @agora user; other contracts are optional).
- Non-git sources and formats other than [[Markdown]] will be supported in the future; if you store your notes using some other system, please reach out.
- See also (needs updating): [agora howto](https://anagora.org/go/agora-howto).


[//begin]: # "Autogenerated link references for markdown compatibility"
[Agora]: agora "Agora"
[personal knowledge management]: personal-knowledge-management "Personal Knowledge Management"
[foam]: foam "Foam"
[vscode]: vscode "Vscode"
[wikilinks]: wikilinks "Wikilinks"
[flancian]: flancian "Flancian"
[contract]: contract "CONTRACT"
[Markdown]: markdown "Markdown"
[//end]: # "Autogenerated link references"