GithubHelp home page GithubHelp logo

dmax1314 / jemdoc-ready Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mkhaled87/jemdoc-ready

0.0 1.0 0.0 2.78 MB

A ready-to-use Jemdoc-based website for research groups and similar organizations. It also contains a dynamic news/RSS-feed system which requires ASP.Net.

Makefile 3.62% Python 70.25% CSS 14.40% C# 2.71% HTML 1.41% JavaScript 2.96% ASP.NET 4.64%

jemdoc-ready's Introduction

{Jemdoc Website}: a ready-to-use Jemdoc website for research-groups and similar organizations (supports Python3)

This is a simple website and News/Rss-feed system for research groups and similar websites. This template is developed using a simple scripting language called JEMDOC. Only Python is required to work with this website. Unless you plan to use an FTP client, you will need lftp to publish the website via the FTP protocol to the hosting server.

Installing and Building the website

We assume you have Python installed in your machine. In the first time using this website (after cloning this repo), or when moving it to another machine, run the following command to download Jemdoc and make it ready:

$ make install

Now, whenever you modify the Jemdoc files in the ./jemdoc/ folder (or add new ones), you need to rebuild the website to generate the HTML codes (in the HTML folder ./html/). Simply run the command:

$ make

This will generate the ./html folder containing all the generated html files and any other files present next to the targeted JEMDOC files. You can locally test the files before publishing them to the web host. For example, double-click the file (./html/members/member1/index.html) to check the page of Member1. If things went correct, this should look like:

Member1

Adding new Website Pages

In order to include new web pages in the automated build system provided by this template, follow the following steps:

1- Add the folders/files you wish to include inside the Jemdoc folder (./jemdoc/).

2- Modify the Makefile (./Makefile) and add the path of every new Jemdoc file in the list of documents (a line that starts with 'DOCS='). File paths should include the folders starting from inside the Jemdoc folder. File paths **must not** have the extention (i.e., the .jemdoc suffix).

3- In case a new page should have a link in the main menu, modify the menu fuile (./MENU) and add a line pointing to the page.

4- Now, build the website as described in the previous section.

Cleaning the website

To remove all the generated html files, run the command:

$ make clean

Publishing the Website using the Makefile

To publish the website you need to have:

1- a website domain-name and hosting space. For now, let's consider your domain name is (mywebsite.com) which points to the hosting server you have a hosting space in. In case you will be using the dynamic News/RSS-feed system which will be deployed in the folder (./html/rss/), your server must support ASP.Net.

2- an FTP account (username/password) with the hosting server. The accounts root-path should point to the published website. We use LFTP to automate the publishing and you need to have it installed.

Remark. Before starting to publish the website, you need to modify the website domain name in the Makefile. More specifically, in the first line under the rule 'publishall', replace 'mywebsite.com' with your website domain name.

For installing LFTP on Ubuntu Linux, use:

$ sudo apt-get install lftp

and for Mac OS (using brew), install it using:

$ brew install lftp

Finally, run the next command to automatically mirror the ./html folder with the website:

$ make publish

You will be prompted for the Username and Password of your FTP account. Wait until the mirroring task finishes.

jemdoc-ready's People

Contributors

mkhaled87 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.