Citadel aims to provide tools for anyone to publish and use open data to easily create mobile apps
No technical skills required
Ready-to-use HTML5 mobile applications
Easily publish spreadsheet data (CSV, Excel, data tables)
Interoperable and open data format : develop once, reuse everywhere
Quickstart
There are 2 main ways to use the Citadel tools. We recommend to start by using the tools on the Citadel plateform, which doesn't require any technical skill, and then switch to the Github tools if you want more control on the resulting apps, or want to host your own platform.
Step 1 : Get and prepare your data
Prepare a spreadsheet data file for the converter. Check out our sample files, or follow the tutorial to prepare a file.
Step 2 : Convert your data to Citadel JSON
Use the Citadel table to JSON Converter tool to convert your CSV or XLS files into Citadel JSON that will be directly usable into your apps. Please check out the Converter tutorials, and FAQ and How-tos if you encounter any difficulty.
Step 3 : Make your app !
- Log in to the plateform (you will need to Register first if you don't have an account yet)
- Publish your converted JSON files to the Citadel datastore
- Use the Application Generator to make it an app ! (see AGT tutorial below for more details)
EASY : Use the Citadel mobile applications templates on Github
(see detailed Templates tutorials)
- Choose and fork a template - or download it to your computer (see Templates differences and uses below)
- Add your converted data into the template
- Play with the settings and tweak the template to fit your needs !
Examples, use cases and stories
Examples : live applications
If you have created an app yourself and want to share it on this page, please let us know!
Use cases
Stories
- How mobile apps where build in Athens, Ghent, Issy, Manchester,...
- ...
Samples files and models
These sample files are used in various cases: some can be used to structure your data, while other require different levels of processing, or can be used directly in the templates. The templates sample files indicates the mandatory and optionnal fields that you need to put into a CSV or XLS file so it can produce a valid and usable JSON file through the Converter.
Note : if you're experiencing troubles with accents, please check your file is encoded in UTF8.
Open samples folder on Github
- Sample templates files: use as models to structure your data
- POIs template : CSV, XLS
- Remarkable trees template : CSV, XLS
- Parking template : CSV, XLS
- Events template : CSV, XLS
- Training input files: demonstrate various uses of the converter. See tutorials for a more detailed description
- Citadel-Json files: ready-to-use files
- Working Citadel-JSON files are provided with every application template. Check for ".json" files in the "data/" folder in their respective Github repository.
Ressources, templates and documentation
Project history and details
Github ressources
The mobile application templates
These templates are meant to be forked and used to quickly deploy mobile applications. They are build on HTML5 and use the Citadel JSON file format. Most templates will work "out-ofthe-box" with none or very few changes. You are encouraged to build application upon them, and of course contribute back your improvements so they can benefit other people. The various templates demonstrate various uses of the mobile applications, and implement several functionnalities. Most templates use static JSON files, but can be set to use live data and/or a database
- POIs template : use this template to display POI (Points Of Interest = places) on a map. Different categories can be used so the user can switch between the different categories that are displayed on the map.
- Parkings template : use this template to display live parking data, including their location, and the number of parkings left.
- Events template : use this template to display events. This template provides a calendar filter so events can be filtered by proximity and by date and time.
- Environnemental template : use this template if you wish to display live sensor data such as temperature, live air analysis, etc. [currently uses Xively for the sensor interface]
- Crowd-sourcing template : use this template if you want thet app users to add new data to your dataset. [requires a database]
The Application Generator Tool (AGT)
This tool makes it easy to build an app without any technical skill. It is the source code of the tool that is available on Citadel platform.
The Data converter : converts CSV or Excel datasets to Citadel JSON files that are ready to be used into application templates
- Converter GUI (java) : this standalone application can be downloaded and used directly on your computer to convert files to Citadel-JSON
- Converter library (java) : this library is designed to be used within an application
- Converter portlet (Liferay, java) : this version is designed to include the converter in a Liferay portal
- Converter PHP library (beta version) : this library can be used to convert dynamically convert files from CSV to Citadel-JSON through a basic API. Feedbacks and improvements welcomed !
Tutorials and How-tos
Tutorials
Open the Tutorials page
Manuals
Citadel is always looking for your feedbacks, use case, stories, and to hear about anything that you have made with our tools : please send us your links to your blog posts, mobile applications and other things you've made with Citadel.
Please use the following channels to get in touch with us:
- Share a link or get in touch with our Twitter account @citadel_eu
- Show your interest and post your Citadel-related news on our Facebook page
- Try out the Citadel tools and discuss with the community on the main Citadel on the Move website
- Send us technical issues such as bug report and feature request an enhancements in the appropriate repository on our Github account. You can use the pre-defined labels to help us categorize your feedback.
- Or send us your news and stories to these pages issue tracker so we can add your links into our Tutorials / Examples / Stories / Applications section
Discuss in the Citadel Community
The Citadel Community is hosted on the Citadel on the Move website as a public ressource and common good. You'll need to create a account to contribute.
Are you a developper ?
If you're a developper and have added useful stuff to the templates, AGT or other of our github repos, contributing back is highly appreciated by the team ! Please submit your changes by pushing a Pull Request to the relevant repo, and/or get in touch so we can check with you how your changes could be integratede and benefit the other developpers and Citadel users.
Also you'll definitely want to see what we have in mind by checking the website and the roadmap, and maybe become a member of one of our teams :)
Roadmap
We have many ideas to improve the Citadel toolbox, here's our roadmap for the near future:
- Add tutorials, examples, comprehensive how-tos...
- Replace GMaps by Leaflet in templates
- Facilitate integration of OSM data
- Develop a library that produces Citadel-JSON (to enable CMS to produce JSON backends)
- Enable the on-the-fly use the converter
- Enable the converter to use geoJSON files
- ...
Credits and thanks
Citadel code was funded and opensourced by an european project : see Citadel on the Move website for full details
Thanks to Font Awesome for the great iconic font used in these pages.