All Projects → artrayme → JMantic

artrayme / JMantic

Licence: MIT license
Java library for connecting to sc-machine

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to JMantic

Wandora
Wandora is a general purpose information extraction, management and publishing application based on Topic Maps and Java.
Stars: ✭ 105 (+650%)
Mutual labels:  semantic
Recent slam research
Track Advancement of SLAM 跟踪SLAM前沿动态【2021 version】
Stars: ✭ 2,387 (+16950%)
Mutual labels:  semantic
Semantic Ui
Semantic is a UI component framework based around useful principles from natural language.
Stars: ✭ 49,729 (+355107.14%)
Mutual labels:  semantic
Node Semantic Git Commit Cli
A CLI for semantic git commits
Stars: ✭ 114 (+714.29%)
Mutual labels:  semantic
Bootstrap Table
An extended table to integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation, Vue.js)
Stars: ✭ 11,068 (+78957.14%)
Mutual labels:  semantic
Dataset loaders
A collection of dataset loaders
Stars: ✭ 187 (+1235.71%)
Mutual labels:  semantic
Open Semantic Entity Search Api
Open Source REST API for named entity extraction, named entity linking, named entity disambiguation, recommendation & reconciliation of entities like persons, organizations and places for (semi)automatic semantic tagging & analysis of documents by linked data knowledge graph like SKOS thesaurus, RDF ontology, database(s) or list(s) of names
Stars: ✭ 98 (+600%)
Mutual labels:  semantic
apina
Tool for creating client-side TypeScript code from server-side APIs
Stars: ✭ 27 (+92.86%)
Mutual labels:  jackson
Semver.c
Semantic version library written in ANSI C
Stars: ✭ 147 (+950%)
Mutual labels:  semantic
Tagsistant
Semantic filesystem for Linux, with relation reasoner, autotagging plugins and a deduplication service
Stars: ✭ 244 (+1642.86%)
Mutual labels:  semantic
Idea Conventional Commit
Context and template-based completion for conventional/semantic commits.
Stars: ✭ 115 (+721.43%)
Mutual labels:  semantic
Sempress
A highly semantic WordPress Theme with HTML5 templates, responsive and seo optimized. SemPress supports most of the new HTML5 tags, the new HTML5 input-types, microformats, microformats v2 and microdata (Schema.org).
Stars: ✭ 132 (+842.86%)
Mutual labels:  semantic
Fomantic Ui
Fomantic-UI is a community fork of Semantic-UI
Stars: ✭ 2,755 (+19578.57%)
Mutual labels:  semantic
Scrivener html
HTML view helpers for Scrivener
Stars: ✭ 112 (+700%)
Mutual labels:  semantic
SRB
Code for "Improving Semantic Relevance for Sequence-to-Sequence Learning of Chinese Social Media Text Summarization"
Stars: ✭ 41 (+192.86%)
Mutual labels:  semantic
Eao Slam
[IROS 2020] EAO-SLAM: Monocular Semi-Dense Object SLAM Based on Ensemble Data Association
Stars: ✭ 95 (+578.57%)
Mutual labels:  semantic
Xdxf makedict
XDXF — a dictionary format, that stores word definitions that are free from representation
Stars: ✭ 177 (+1164.29%)
Mutual labels:  semantic
OLGA
an Ontology SDK
Stars: ✭ 36 (+157.14%)
Mutual labels:  semantic
catnap
Partial JSON response framework for RESTful web services
Stars: ✭ 55 (+292.86%)
Mutual labels:  jackson
Scoper
Fuzzy and semantic search for captioned YouTube videos.
Stars: ✭ 225 (+1507.14%)
Mutual labels:  semantic

drawing


java-sc-client (JMantic)

Overview

The global goal of this project is to create java-interface for using any sc-memory implementations. But for a current moment, the goal of this project is to create a java-library for connecting to a sc-machine via a WebSocket interface by using json format.

Documentation in Russian


Main project priorities:

  • Easy-to-use. The public api must be easy to understand. All public-api classes should use basic domain abstractions and have comprehensive documentation.
  • Stability and reliability. The Project must have high test coverage (80+%). Also, project should have multi-level logging of events in the system and hierarchy of informative exceptions for each architectural layer.
  • Modern language features. The project must use the latest lts-versions of java and not limit itself to new features of the language
  • Easy to support. The minimum number of required third-party libraries was used for the implementation.

It is important to note that at this stage of project development there is no goal to make a fast library (due to the technical limitations of the sc-machine, as well as a deviation from the main goals of the project).


Package

If you want to use JMantic in your programs, follow these steps:

Gradle

New way since 0.6.2:

  implementation 'io.github.artrayme:jmantic:0.6.3'

Old way:

First, you should add repo to the repositories section.

For example:

repositories {
    mavenCentral()
    maven {
        url = uri("https://maven.pkg.github.com/artrayme/jmantic")
        credentials {
            username = "github_username"
            password = "github_PAT_with_access_to_packages_reading"
        }
    }
}

Where GitHub_username it is you username in GitHub. Password - your GitHub personal access token. To get such a token, you need to go to GitHub settings, then go to Developer settings, where in the Personal Access Token section click Generate new token. In the generation menu, you only need to select the read:packages checkbox. The generated token needs to be inserted into the password field in the above example.

More information about PAT

Dependency:

implementation 'org.ostis:jmantic:0.6.1'

Maven

New way since 0.6.2:

<dependency>
    <groupId>org.ostis</groupId>
    <artifactId>jmantic</artifactId>
    <version>0.6.3</version>
</dependency>

Old way:

The first step is to change the settings.xml file in the ~/.m2 folder

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      http://maven.apache.org/xsd/settings-1.0.0.xsd">

    <activeProfiles>
        <activeProfile>github</activeProfile>
    </activeProfiles>

    <profiles>
        <profile>
            <id>github</id>
            <repositories>
                <repository>
                    <id>central</id>
                    <url>https://repo1.maven.org/maven2</url>
                </repository>
                <repository>
                    <id>github</id>
                    <url>https://maven.pkg.github.com/artrayme/JMantic</url>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                </repository>
            </repositories>
        </profile>
    </profiles>

    <servers>
        <server>
            <id>github</id>
            <username>github_username</username>
            <password>github_PAT_with_access_to_packages_reading</password>
        </server>
    </servers>
</settings>

Where GitHub_username it is your username in GitHub. Password - your GitHub personal access token. To get such a token, you need to go to GitHub settings, then go to Developer settings, where in the Personal Access Token section click Generate new token. In the generation menu, you only need to select the read:packages checkbox. The generated token needs to be inserted into the password field in the above example.

More information about PAT

Dependency

<dependency>
    <groupId>org.ostis</groupId>
    <artifactId>jmantic</artifactId>
    <version>0.6.1</version>
</dependency>

Ostis configuration

To use JMantic, you need ostis version 0.6.0. You can run ostis any way you want. For example, you can run ostis in the docker with the following command (you may have to run these commands with sudo):

docker run -it -p 8000:8000 -p 8090:8090 ostis/ostis:0.6.0 sh ostis --all

If you do not need to build the base, you can speed up the startup with the following command

docker run -it -p 8000:8000 -p 8090:8090 ostis/ostis:0.6.0 sh ostis --sctp --web

More information about dockerized ostis - GitHub repository


Conventions

JMantic versioning

In this project, the semantic version is used but with a couple of improvisations.

Version has the format: x.y.z

Where:

  1. x - is a major version. A big difference can be between major versions. Only domain and purpose must be the same in different major versions.
  2. y - is a minor version. The public api and implementation can be changed between minor versions, but the core interfaces must not be removed.
  3. z - versioning for bug fixing and small features adding. Public api cannot be changed.

Sc-elements naming

ToDo


Used libraries

Related technologies

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].