Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/innoq/iqvoc
iQvoc - A SKOS(-XL) Vocabulary Management System for the Semantic Web
https://github.com/innoq/iqvoc
Last synced: 6 days ago
JSON representation
iQvoc - A SKOS(-XL) Vocabulary Management System for the Semantic Web
- Host: GitHub
- URL: https://github.com/innoq/iqvoc
- Owner: innoq
- License: other
- Created: 2010-09-01T11:29:07.000Z (over 14 years ago)
- Default Branch: main
- Last Pushed: 2024-10-17T09:52:43.000Z (4 months ago)
- Last Synced: 2025-01-18T07:04:08.270Z (13 days ago)
- Language: Ruby
- Homepage: http://iqvoc.net/
- Size: 23.5 MB
- Stars: 118
- Watchers: 24
- Forks: 44
- Open Issues: 55
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-starred - innoq/iqvoc - iQvoc - A SKOS(-XL) Vocabulary Management System for the Semantic Web (others)
README
# iQvoc
[![Gem Version](https://badge.fury.io/rb/iqvoc.png)](http://badge.fury.io/rb/iqvoc)
![CI](https://github.com/innoq/iqvoc/workflows/CI/badge.svg)
[![Code Climate](https://codeclimate.com/github/innoq/iqvoc.png)](https://codeclimate.com/github/innoq/iqvoc)iQvoc is a vocabulary management tool that combines easy-to-use human interfaces
with Semantic Web interoperability.iQvoc supports vocabularies that are common to many knowledge organization
systems, such as:* Thesauri
* Taxonomies
* Classification schemes
* Subject heading systemsiQvoc provides comprehensive functionality for all aspects of managing such
vocabularies:* import of existing vocabularies from a SKOS representation
* multilingual display and navigation in any Web browser
* editorial features for registered users
* publishing the vocabulary in the Semantic WebiQvoc is built with state-of-the-art technology and can be easily customized according to user's needs.
## Demo
You can try out iQvoc right now! In our [sandbox](http://try.iqvoc.net/) you can play around with the public views.
If you like to test the collaborative functions simply [request](mailto:[email protected]) your personal demo account.## Setup
### Heroku
You can easily setup your iQvoc instance in under 5 minutes, we wanted to make
this process really easy. In order to deploy to heroku you need to have an
account and [heroku toolbelt](https://toolbelt.heroku.com) installed.```
$ bundle install
$ heroku create
$ heroku config:add HEROKU=true RAILS_ENV=heroku RACK_ENV=heroku SECRET_KEY_BASE=$(bundle exec rake secret)
$ git push heroku master
$ heroku run rake db:migrate
$ heroku run rake db:seed
$ heroku restart
````heroku open` opens your app in the browser.
Remember to visit the Users section and change the default passwords!
### Docker
If you want to try iQvoc using Docker just clone this repository and run:
```
$ docker-compose up
```This Setup uses Postgres as a database. Please make sure that your Docker daemon is running and that you have docker-compose installed. User credentials can be found in https://github.com/innoq/iqvoc/blob/master/db/seeds.rb.
### Custom
We recommend running [iQvoc as a Rails engine](https://github.com/innoq/iqvoc/wiki/iQvoc-as-a-Rails-Engine).
Running the cloned source code is possible but any modifications would require a
fork.1. Configure your database via `config/database.template.yml`.
Don't forget to rename it to `database.yml`
2. Run `bundle install`
3. Run `bundle exec rake db:create` to create the database
4. Create the necessary tables by running `rake db:migrate`
5. Load some base data by running `rake db:seed`
6. Make sure you have got `config/secrets.yml` in place
7. Install nodejs dependencies for compiling assets: `npm install` (make sure nodejs is installed)
8. Compile assets using: `npm run compile` (or `npm run watch` to compile and listen for changes in development)
8. Boot up the app using `bundle exec rails s` (or `passenger start` if you use passenger)
9. Log in with "admin@iqvoc" / "admin123" or "demo@iqvoc" / "cooluri123" (cf. step #5)
10. Visit the Users section and change the default passwords## Background Jobs
Note that some features like "Import" and "Export" exposed in the Web UI store
their workload as jobs. You can either issue a job worker that runs continuously
and watches for new jobs via```
$ rake jobs:work
```or process jobs in a one-off way (in development or via cron):
```
$ rake jobs:workoff
```## Compatibility
iQvoc is fully compatible with Ruby 2.6.
## Customization
There are many hooks providing support for your own classes and configuration.
The core app also works as a Rails Engine. The config residing in `lib/iqvoc.rb`
provides a basic overview of the possibilities.## Documentation
Documentation resources can be found in the [wiki](https://github.com/innoq/iqvoc/wiki).
iQvoc provides an (inline) API documentation which can be found on `APP_URI/apidoc`. Check out our sandbox to see it in action: http://try.iqvoc.net/apidoc/
## Related projects
We provide several extensions to add additional features to iQvoc:
* [iqvoc_skosxl](https://github.com/innoq/iqvoc_skosxl): SKOS-XL extension for iQvoc
* [iqvoc_compound_forms](https://github.com/innoq/iqvoc_compound_forms): Compound labels for iQvoc
* [iqvoc_inflectionals](https://github.com/innoq/iqvoc_inflectionals): Inflectionals for iQvoc
* [iqvoc_similar_terms](https://github.com/innoq/iqvoc_similar_terms): iQvoc engine for similar terms## Versioning
Releases will follow a semantic versioning format:
..
For more information on SemVer, visit http://semver.org/.
## Contributing
If you want to help out there are several options:
- Found a bug? Just create an issue on the
[GitHub Issue tracker](https://github.com/innoq/iqvoc/issues) and/or submit a
patch by initiating a pull request
- You're welcome to fix bugs listed under
[Issues](https://github.com/innoq/iqvoc/issues)
- Proposal, discussion and implementation of new features on our mailing list
[[email protected]] or on the issue trackerIf you make changes to existing code please make sure that the test suite stays
green. Please include tests to your additional contributions.Tests can be run via `bundle exec rake test`. We're using Cuprite for
integration tests with JavaScript support.## Maintainer & Contributors
iQvoc was originally created and is being maintained by [innoQ Deutschland GmbH](http://innoq.com).
* Robert Glaser ([mrreynolds](http://github.com/mrreynolds))
* Till Schulte-Coerne ([tillsc](http://github.com/tillsc))
* Frederik Dohr ([FND](http://github.com/FND))
* Marc Jansing ([mjansing](http://github.com/mjansing))## License
Copyright 2022 [innoQ Deutschland GmbH](https://www.innoq.com).
Licensed under the Apache License, Version 2.0.