About

EduLib, member of MuseGlobal Group, is a privately held software development company located in Craiova, România.

EduLib is the team who built Muse®, carries Dr. Peter Noerr’s legacy, and is taking over licensing and support for The Muse® Platform.

EduLib offers high-quality, multi-platform software products that cover a wide area of customer needs. We make use of our solid software expertise for more than 20 years to design and develop powerful and reliable software platforms, tools and utilities, targeted from administrators and software developers to Enterprise, Education and Library Information Discovery.

Our competence and experience ensures that we deliver excellent services and products to our customers. At EduLib we are proud of our high quality standards. These standards allow us to provide our customers with reliable and error-free software platforms and individual applications, regardless of complexity.

Feel free to contact us for more information about our company and our products.

Our Skills and Experience

Our skills and experience have enabled us to consistently produce results of the highest standards for our clients. We can deliver the best solutions that meet our client’s expectations; we drive to exceed expectations where we can.

Languages


OOP

  • Java: Muse® Platform, Muse® Proxy, Muse® Users Identity Manager, CERTivity, LICENSivity are all developed in Java;
  • .Net: components such as the MuseSearch SharePoint Web Part, written in C# porting all Muse network API from Java to C#;
  • Swift: Muse® Mobile.

Functional and Declarative

  • XQuery: built an entire framework on XQuery for Support and Source Factory repositories;
  • XSLT: manage thousands of transformation for mappings and built a generator for search queries translators;
  • XSD: manage XSDs defining thousands of elements;
  • SQL: MySQL, PostgreSQL, stored procedures, views;
  • NoSQL: MongoDB;
  • HTML 5: video and audio native handling, input validation;
  • CSS 3: browser decisional, mobile customized, advanced item positioning, color schema marketing techniques;
  • Bootstrap: content organization, device scalability;
  • FreeMarker Template Language.

Scripting

  • Javascript/jQuery, jQuery Mobile, Functional Programming, Ajax with jQuery, Error trapping;
  • PHP: developed WordPress plugins and extended PHP applications as Eventum Issue Tracking System and phpMyFAQ;
  • AngularJS;
  • Jelly;
  • Beanshell;
  • Shell Scripting both Unix and Windows.

Operating Systems


  • Linux: Red Hat, Debian, Ubuntu, CentOS;
  • Windows: Windows 7, Windows 10, Windows 2003 Server, Windows 2008 Server, Windows 2012 Server;
  • Mac OS;
  • iOS, Android.

Technologies


  • Java Authentication and Authorization Service (JAAS);
  • Java Servlet and Servlet Engine;
  • JavaServer Pages (JSP);
  • Java Secure Socket Extension (JSSE);
  • Java Management Extension (JMX);
  • Java Message Service (JMS);
  • Java Utile Concurrent;
  • Javax Mail;
  • Javax XML: SAX, DOM and Transform;
  • Java Database Connectivity (JDBC);
  • OAuth, Shibboleth, Athens;
  • Apache AXIS;
  • Content Repository API for Java (JCR) ;
  • Apache Tomcat: integrated into various products, created XML Tomcat Connectors to be used for a different non-HTTP protocol;
  • Java Swing;
  • NetBeans RPC;
  • Simple Logging Facade for Java;
  • Java Obfuscation (ProGuard);
  • eXist/XIndice XMLDB: with xQuery, xUpdate;
  • IBM WebSphere MQ: writers, readers and data validators;
  • Microsoft SharePoint;
  • Apache Web Server: advanced configuration for access, URL rewriting;
  • NGINX reverse proxy;
  • Spring 5, Spring Boot 2, Spring Security, Spring Data JPA;
  • Hibernate;
  • OAuth2, SAML, HMAC;
  • Jetty, Netty;
  • Mockito;
  • JUnit, Selenium;
  • ELK Stack;
  • Apache Solr.

Tools


IDE

  • Eclipse IDE;
  • NetBeans IDE;
  • Microsoft Visual Studio;
  • Oxygen XML Editor;
  • Visual Studio Code;
  • Spring Tools 4;
  • Android Studio;
  • Xcode.

Code Tools

  • YourKit Java Profiler;
  • Oracle JDK tools: JConsole, JavaTM VisualVM, jstat, jhat;
  • Checksytle;
  • Cobertura;
  • CPD Report;
  • Dependency Analysis;
  • FindBugs Report;
  • PMD Report;
  • EMMA: open-source toolkit for measuring and reporting Java code coverage;
  • Tortoise HG, Mercurial;
  • WinCVS, CVS: with permissions patch, repositories with multiple modules;
  • Git, SonarLint;
  • In-house code generators and analyzers.

Build and Install

  • Apache Ant: used to build Java applications and at runtime by various components to control business logic;
  • Apache Maven;
  • Apache Archiva: The Build Artifact Repository Manager;
  • InstallShield MultiPlatform: high customization and upgrade beans;
  • InstallShield;
  • Install4j, including Apache Maven release integration.
  • Jenkins: building/testing software projects continuously with Apache Maven, Mercurial and CVS integration.

File, Network and Protocol Tools

  • Total Commander;
  • FAR Manager;
  • UltraEdit;
  • WinSCP;
  • KDiff3;
  • Araxis Merge;
  • Sniffers: CommView, HTTP Analyzer Full Edition, Fiddler;
  • SoapUI;
  • YAZ Client;
  • ZNavigator.

Software Libraries


  • Jakarta RegExp: almost all Muse Products use it to parse the desired information from raw text that has no metadata information;
  • Apache Derby;
  • OCLC Z39.50;
  • Log4J: enable logging at runtime without modifying the application binary. Logging behavior can be controlled by editing a configuration file, without touching the application binary;
  • Saxon: XSLT processor that provided a standard XSLT implementation and custom extensions that are used throughout the Muse stylesheets;
  • Andariel: for additional Ant tasks supporting Xpath query in XML files;
  • jRobin: Muse® RRD Grapher is the tool used to create the graphs from the RRD files in which Muse® JMX Monitor stores data retrieved from ICE Server and Apache Tomcat extended and embedded within Muse;
  • JFreeChart: extensively used in Muse® Statistics Monitor for charting various Muse related parameters. It is also used by Muse® Source Package Testing tool;
  • JasperReports: Muse® Statistics Monitor and Muse® Control Center need to generate PDF reports;
  • Apache FOP: used to create documentation;
  • BouncyCastle;
  • TrueLicence;
  • Commons Lang Component: provides a series of helper utilities for the java.lang API, notably String manipulation methods, basic numerical methods, object reflection, creation and serialization, and System properties. Additionally it contains an inheritable enum type, an exception structure that supports multiple types of nested-Exceptions, basic enhancements to java.util.Date and a series of utilities dedicated to help with building methods, such as hashCode, toString and equals;
  • POI: consists of APIs for manipulating various file formats based upon Microsoft's OLE 2 Compound Document format, and Office OpenXML format, using pure Java;
  • CLI: provides a simple and easy way to use API for working with the command line arguments and options;
  • NetComponents: various Muse® Control Center Tasks need support for FTP operations and this library provides the best support for them;
  • Jelly: created scripts that have a certain functionality and which could be called from the Muse® Builder GUI;
  • Jakarta ORO: Muse Products (Muse® Admin Bridge, Muse® Builder, Muse® Control Center, Muse Setup) use this library because they need to specify and filter files using glob expressions (expressions that contain * and ?);
  • XStream: Muse® Builder and Muse® Source Package Testing use XStream as a method of persisting the application settings between two runs in XML format;
  • PDFBox: used by Muse PDF sources and also by PDFConverter tool;
  • Rhino: Muse uses it for proxy.pac file;
  • Xerces2: default parser for Muse;
  • Java Mail: uses for Muse Products that need to send email such as: Muse® Control Center, Muse® Source Factory, Muse® Admin, Muse® Serial Number;
  • XMLMARC: used by Muse Z39.50 Connectors to convert the retrieved records(obtained on a search) from the MARC format to XML format;
  • Apache XML-RPC: used for Muse XMLDB database;
  • JUnit;
  • XMLUnit: XMLUnit for Java provides two JUnit extension classes, XMLAssert and XMLTestCase, and a set of supporting classes (e.g. Diff, DetailedDiff, Transform, SimpleXpathEngine, Validator, NodeTest);
  • Quartz: Job Scheduling Library;
  • Apache Lucene: Indexing Muse records for relevance sorting.

Protocol, Standard and Format Level Programming


  • TCP/IP: server and client;
  • SSL: server and client;
  • HTTP(S): server and client;
  • SMTP: client;
  • Z39.50: server and client;
  • XML-RPC: server and client;
  • SOAP and REST: server and client;
  • WebDAV: client;
  • SSH: client;
  • (S)FTP(S): client;
  • telnet: client;
  • tn5250 (Greeen Screen): client;
  • 3MTM Standard Interchange Protocol (SIP): both server and client;
  • NCIP (NISO Circulation Interchange Protocol, also known as Z39.83): client;
  • Inter Library Loan (ILL): client;
  • LDAP: client;
  • Adobe® Portable Document Format (PDF): read and write;
  • Topic Maps: an international industry standard (ISO 13250) for information management and interchange - read and write;
  • Abstract Syntax Notation One (ASN.1) with Basic Encoding Rules (BER), Distinguished Encoding Rules (DER) and XML Encoding Rules (XER): read and write;
  • Public-Key Cryptography Standards (PKCS): X.509 Certificate Files, PKCS#7, PKCS#8, PKCS #8 Key Pairs, PKCS #8 Private Key Files, PKCS #10 CSR, PKCS #12 Key Pairs and KeyStores;
  • Global Justice XML Data Model (Global JXDM): read and write;
  • Logical Entity eXchange Specifications (LEXS): Justice Information Sharing;
  • MAchine-Readable Cataloging standards (MARC): read and write;
  • Qualified Dublin Core Metadata Element Set: read and write;
  • RSS and Atom Syndication Format: read and write;
  • RIS, EndNote, Refworks for citation exchange: write;
  • JSON: read and write;
  • Facebook Graph API: read (retrieve);
  • LinkedIn People Search API: read (retrieve);
  • Microsoft Exchange Web Services: read (retrieve);
  • Search Retrieval via URL (SRU) / Search/Retrieve Web service (SRW);
  • Open Archives Initiative Protocol for Metadata Harvesting (OAI-PMH).

Databases


Native XML Databases

  • eXist XMLDB: used in production for many components and central repositories;
  • Xindice XMLDB: used in production in the early years of XML Databases advent;
  • Marklogic: evaluated to make sure we can use it to store our structures and run our standard XQueries, in the event a certain partner wants to use Marklogic instead of the eXist XMLDB;

Relational Databases

  • MySQL, PostgreSQL: stored procedures, views;
  • Firebird;
  • JavaDB: stored procedures, views;
  • Oracle: stored procedures, triggers, views;
  • Liquibase: an open source library for tracking, managing and applying database changes.

NoSQL Databases

  • MongoDB;

Networking and Administration


  • Advanced scripts for monitoring and automated operations such as assigning/removing user rights;
  • Advanced scripts for firewall access called from a HTML Interface for requesting special rights;
  • Advanced backups with Bacula and developed scripts;
  • Grafana, Nagios, Zabbix and Cacti monitoring software with developed plugins for proprietary services/servers;
  • Hardware and Software Inventory: OCS Inventory NG;
  • Advanced settings on Cisco routers;
  • AWStats for FTP, web sites and proprietary servers;
  • SSH, Tunneling, TCP port forwarding with Socat;
  • PPTP and OpenVPN;
  • Firewall built on iptables;
  • Postfix SMTP, Dovecot IMAP, ClamAV antivirus with SpamAssasin, Roundcube/RainLoop Webmail;
  • Microsoft Exchange Server 2003, 2010, 2013 and 2016;
  • Load balancers configuration and maintenance, either hardware or software: F5, Coyote Point Systems Equalizer/FortiADC, Cisco GSS/DNS; HAProxy; Resonate.
  • Rsync and NFS for data sync in shared environments;
  • Xen, KVM and VMWare for Virtual Machines administration: scripts to create/destroy VM on demand.

Authoring and Publishing


  • Docbook: hundreds of manuals and documentation both for distribution, development or administrative purposes. Customizing both the FO and HTML layout to match the company template;
  • Custom XML documents and corresponding transformations for Detailed Changes and Release Notes;
  • Created a tool to transform from Word Docs into DocBook;
  • Javahelp: used for desktop tools and applications;;
  • Custom tools for continuous building and publishing documentation on the Support Site and Admin Site;
  • Apache Jackrabbit™ Content Repository;
  • Microsoft Office;
  • Oxygen XML Author;
  • XMLmind;
  • WordPress;
  • Liferay;
  • phpMyFAQ;
  • phpBB.

Project Management


  • Jira;
  • Eventum Issue Tacking System;
  • IssueTrak;
  • Microsoft Project;
  • Basecamp;
  • Particular workflows were defined in Eventum and Jira;
  • Implemented ISO-9001.