Website of Rakuten Open-source.
This app is written in Elm. It requires to be compiled before being published. Keep reading to learn how to modify it.
The only prerequisite is to have Node.js installed. You can download it from https://nodejs.org/en/download/
After that, clone the repository with
git clone https://github.com/rakutentech/rakutentech.github.io.git
then move into the project folder and install the dependencies:
cd rakutentech.github.io
npm install
now you are ready to run the development server with
npm start
this will download other dependencies, start a server and open a new page in the browser. Now you can start your favorite editor and start changing the application. Every time you save the window in the browser will automatically refresh.
When you are happy with the result you can just commit your changes in the remote repository through a pull request. As soon as the changes are merged into the master branch they will be available online.
The main files that you may need to edit are in the src folder. If you want to modify the footer, for example, edit the file ViewFooter.elm. For the header: ViewHeader.elm, etc.
If you prefer to minify the Javascript file, remember to run this command before committing your modifications:
npm run optimize
If you are debugging the application you may compile it in debug mode using the command
npm run debug
After running this command, remember to run either cmd/start
or npm run optimize
before submitting your modifications to production.
The app automatically get the list of the repositories from Github. It also has a list of hard coded repositories in the file Repos.elm
. Then it concatenated the two list together and show them in the page.
Contain all the commands that can be executed
Icons
Images
Javascript files (Elm compiled + starter)
Contains Elm dependencies, not to be pushed in the repository
Contains other dependencies, not to be pushed in the repository. This folder contains, among other things, Elm compiler and elm-live.
Internal
(folder) : This folder contain the rest of the application that usually don't need to be modified unless new feature need to be added to the siteConf.elm
: Configuration values such as colors and sizesRepos.elm
: A list of repositories that are not under therakutentech
github accountReposFilter
: Initial filter of repos. For example exclude repos that have no descriptions or that contains the word "deprecated"ViewBody.elm
: This file contain the tagline that appear at the top of the page and the paragraph underneathViewFooter.elm
: The footerViewHeader.elm
: The headerViewRepo.elm
: This contain how the repo data is displayed in each card
Examples of JSON responses used during development
elm.json
: Meta data about the Elm project. Updated automatically by Elm.favicon.ico
: Favorite Iconindex.html
: The main pageLICENSE
: MIT Licensepackage-lock.json
: To manage npm dependencies. Updated automatically.package.json
: To manage npm dependenciesREADME.md
: This file