Difference between revisions of "ARK2"
From ARK
(→Aims) |
(→Documentation) |
||
Line 34: | Line 34: | ||
* [[ARK2/Design|Design]] - High Level Design Decisions | * [[ARK2/Design|Design]] - High Level Design Decisions | ||
* [[ARK2/Technical|Technical]] - Technical details, Development tools and procedures | * [[ARK2/Technical|Technical]] - Technical details, Development tools and procedures | ||
+ | * [[ARK2/The_ARK_Way|The ARK Way]] - Web Development - The ARK2 Way | ||
* [[ARK2/Install|Install]] - Installation Instructions | * [[ARK2/Install|Install]] - Installation Instructions | ||
* [[ARK2/Architecture|Architecture]] - System Architecture | * [[ARK2/Architecture|Architecture]] - System Architecture |
Revision as of 12:26, 16 December 2017
This page details the progress on development of ARK 2.0
Aims
The primary aims of ARK2 are:
- Full code re-write to modern standards using modern components
- Separate the ARK Database backend from the ARK Web frontend
- Implement a modern RESTful API to allow other frontends and apps to access and update the ARK Database
- Simplify the setup and configuration of ARK by moving the config into the database and providing online config tools
- Improve the overall performance and data integrity of ARK
- Make it possible to provide an ARK hosting service
Modern frontend
- HTML5
- Bootstrap 3 based
- Twig templates
- Front Controller model
- Config driven pages views
Modern backend
- Full REST API to access and update all ARK data
- Database abstraction and Object Relational Mapping
- Config driven data schema
- Controlled Vocabularies
- User Authentication via internal user/password and external OAuth2 providers (Facebook, Google, etc)
- User Authorisation via Role Based Access Control (RBAC) using hierarchical Roles and Permissions structure
- Field-level data access control
- Data Workflows in conjunction with User Authorisation control
Documentation
Details of ARK2 can be found in the following sections:
- Design - High Level Design Decisions
- Technical - Technical details, Development tools and procedures
- The ARK Way - Web Development - The ARK2 Way
- Install - Installation Instructions
- Architecture - System Architecture
- Database - Database / ORM details
- Cache - Cache details
- Model - Data model / Schema
- Spatial - Spatial data
- Vocabulary - Controlled Vocabularies
- File Management - File, Image, and other Media Management
- Localization - Internationalization, Localization, and Translation
- Security - Security, Authentication, Authorisation, User Management
- API - REST API implementation
- Frontend - Web Frontend
- Templates - Using Twig for the Web Frontend
- Console - Admin Consoles
- Admin - Admin Frontend
- Branding - Branding of the ARK Project, Products, and Service