Coder Social home page Coder Social logo

web's Introduction

ISTLab-Web

This is the repository for the ISTLab web site. This system is used to create and maintain the website. The system manages information regarding

  • research groups
  • group members
  • research projects
  • publications

The technologies that are used are Git, XML, XSLT, make, grep, BiBTeX, and bib2xhtml

Data are kept in XML form (groups, members, projects) and for the publications BiBTeX is used. Data are transformed into static HTML pages by XSLT scripts and data validation checks are performed by XML validator (DTD schemas).

Quick HOWTO

  • To add a new publication edit the file in data/publications corresponding to the type of the publication you are adding. You can use a BibTeX entry exported from a digital library. However, you need to add the XEmember and XEgroup fields; look at existing entries for examples.
  • To add a new member, add a file under data/members; to add a new project, add a file under data/projects; to modify an existing one, edit the corresponding file. Again, when adding, you can get a head-start by copy-pasting a template (see below).

Project Structure

  • bin : win32 version of binaries that are needed by the system note : OS X and Linux users and should install them separetaly.
  • build : Temporary files that are used to locally build the website
  • data : XML and bibtex user data
    • groups : Research group data (XML)
    • members : Members' information (XML)
    • projects : Project information (XML)
    • publications : Bibliographic data (Bibtex)
    • rel_pages : Rogue HTML pages, which are assigned to a research group
  • doc : System's documentation (still work in progress)
  • lists :
  • public_html :
  • schema : System's DTDs and transformation scripts
  • tools : Scripts and tools used by the system to build reports
  • Makefile : The system's operation is orchestrated by this make file. Common commands include
    • html : Build the website locally
    • val : Validate local data and report problems
    • clean : Delete temporary build files (usually run this before using the html target)

Dependencies

  • make : GNU make
  • bibtex : LaTeX's bibtex tool
  • perl : Perl programming Language (used only on reporting)
  • xmlstarlet : A command-line tool that exposes libxml basic facilities

Note: The win32 version of these utilities are included in the basic distribution ot the system.

ISTLab-web System Cheatsheet

Checkout the Project repository

git clone [email protected]:istlab/web.git

Adding a new file

git add <path/filename>

Commit Local Changes

git commit -m '<your-comment-here>' -a

Upload Changes to Main Repository

git push

Building the Site Locally

make clean html

and then open public_html/index.html file with your favorite web browser.

Document Templates

  • doc/templates/group-sample.xml : XML Template for a research group
  • doc/templates/member-example.xml : XML Template for a group member
  • doc/templates/project-example.xml : XML Template for a research project
  • doc/templates/rel_page-example.xml : XML Template for a group HTML page
  • doc/templates/publication-schema.bib : Bibtex entries templates

To create,

  • a new group, copy the template file to the data/groups/ directory
  • a new member, copy the template file to the data/members/ directory
  • a new project, copy the template file to the data/projects/ directory
  • a group HTML page, copy the template file to the data/rel_page/ directory
  • a new publication, update the appropriate bib file in data/publications/ directory (common files for all groups)

Validate Local Data

It is important to validate local data before commiting by using the make val command. For example:

bkarak@pc:~/web [master]$ make val
Creating output directories
Creating unified database
---> Checking group data XML files ... 
---> Checking member data XML files ...
---> Checking project data XML files ...
---> Checking additional HTML pages ...
---> Checking announcements ...
---> Checking db.xml ...

web's People

Contributors

bkarak avatar dspinellis avatar dimitrop avatar aggkostaki avatar gousiosg avatar mkechagia avatar vsvlachos avatar mfragkoulis avatar stefanos1316 avatar nkorf avatar antonisgkortzis avatar tushartushar avatar chatziantoniou avatar stheotok avatar theosotr avatar apergis avatar pouloudi avatar vitsalis avatar kounav avatar akpoulymenakou avatar strihias 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.