NextTypes is a system for storing, processing and transmitting information based on standards that integrates the features of other systems such as relational databases, programming languages, transmission protocols, file systems, operating systems, frameworks, data formats and hardware in one tightly integrated system through a common data types system.
The system is based on a multi-language (with UTF-8 character encoding), relational, modular, MVC and REST architecture that provides users with a simple interface to manage data (create data types, add objects of these data types, edit and delete them) and developers with the ability to modify and extend the system, incrementally, adapting the interface and programming actions executed when reading or writing data through a system with a slightly higher level of abstraction than JDBC that simplifies using SQL.
To use all the functionality of the web interface is necessary to use a modern browser with support for the latest web technologies.
Currently integrated technologies are the following:
- Databases: PostgreSQL and MySQL.
- Protocols: HTTP, WebDAV, CalDAV and SMTP (sending and receiving emails).
- Data Formats: XHTML5, CSS3, JSON, XML, RSS, Smile, iCalendar, QRCode, JPEG and PNG.
- Authentication Systems: X.509 Certificates and passwords (bcrypt encrypted).
- Authorization System: User and group permissions.
- Text editors: Syntax highlighting (CodeMirror) and WYSIWYG (TinyMCE).
- Data export and import to/from JSON/XML/Smile.
- Metadata and text extraction: PDF, OpenDocument, Office Open XML, Microsoft Office binary formats and other formats using Tika.
- System: robots.txt file.
The system also includes full text search, WCAG 2-AAA conformance, cache and logging of HTTP requests, logging of SQL queries and anti CSRF, XSS, SQL injection and DoS (requests per minute from the same IP address) protection.
The software is distributed under Apache 2.0 license in a WAR file easily installable. To test the software interface (in read-only mode), without installing it, you can explore this website, which is developed using the software. In the menu on the left, in the "Control Panel" and in the buttons above / right of the page, are the available actions.
The system is based on a theoretical basis where information management needs, existing systems or theories and their use and possible improvement to meet those needs are investigated.
Some of the systems under study for integration are: