Repository files navigation

Java Client Libraries for Solid

Contributor Covenant

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to engineering@inrupt.com.

The Inrupt Java Client Libraries provide highly flexible, simple components that can be used in any Java application for Solid. The libraries are composed of different modules that follow a layered architectural approach.

Using the libraries as a dependency in your own projects

To use the Inrupt Java Client Libraries in your projects make sure to visit the Getting Started page of the documentation.

Next we will document how to use this repository locally.

Using this repository locally

After cloning the repository locally you can work with the code as follows:

Code build

The project can be built with Maven and a Java 17+ build environment.

 ./mvnw install

Running tests

The repository contains multiple tests. Each module has dedicated unit tests. And there is a module dedicated to integration testing in the integration module. By running the following command all tests (including integration tests) are run:

 ./mvnw test

The integration tests come with a dedicated Mocked Solid Server. Their configuration can be setup in such a way that the integration tests can be run also on live Solid Servers. More about their setup and configuration can be found on the integration test README.

Code coverage

This project uses JaCoCo for generating the code coverage metric that measures how many lines of code are executed during automated tests. To generate the reports (in different formats) run:

 ./mvnw verify

The reports are then placed in the report/target/site folder on the project root.

Issues & Help

Solid Community Forum

If you have questions about working with Solid or just want to share what you’re working on, visit the Solid forum. The Solid forum is a good place to meet the rest of the community.

Bugs and Feature Requests

  • For public feedback, bug reports, and feature requests please file an issue via Github.
  • For non-public feedback or support inquiries please use the Inrupt Service Desk.

Documentation

Changelog

See the Release notes

License

MIT © Inrupt

About

Java Client Libraries for Solid

Resources

Code of conduct

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

Java Client Libraries for Solid

Contributor Covenant

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to engineering@inrupt.com.

The Inrupt Java Client Libraries provide highly flexible, simple components that can be used in any Java application for Solid. The libraries are composed of different modules that follow a layered architectural approach.

Using the libraries as a dependency in your own projects

To use the Inrupt Java Client Libraries in your projects make sure to visit the Getting Started page of the documentation.

Next we will document how to use this repository locally.

Using this repository locally

After cloning the repository locally you can work with the code as follows:

Code build

The project can be built with Maven and a Java 17+ build environment.

 ./mvnw install

Running tests

The repository contains multiple tests. Each module has dedicated unit tests. And there is a module dedicated to integration testing in the integration module. By running the following command all tests (including integration tests) are run:

 ./mvnw test

The integration tests come with a dedicated Mocked Solid Server. Their configuration can be setup in such a way that the integration tests can be run also on live Solid Servers. More about their setup and configuration can be found on the integration test README.

Code coverage

This project uses JaCoCo for generating the code coverage metric that measures how many lines of code are executed during automated tests. To generate the reports (in different formats) run:

 ./mvnw verify

The reports are then placed in the report/target/site folder on the project root.

Issues & Help

Solid Community Forum

If you have questions about working with Solid or just want to share what you’re working on, visit the Solid forum. The Solid forum is a good place to meet the rest of the community.

Bugs and Feature Requests

  • For public feedback, bug reports, and feature requests please file an issue via Github.
  • For non-public feedback or support inquiries please use the Inrupt Service Desk.

Documentation

Changelog

See the Release notes

License

MIT © Inrupt

About

Java Client Libraries for Solid

Resources

Code of conduct

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Java Client Libraries for Solid

Contributor Covenant

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to engineering@inrupt.com.

The Inrupt Java Client Libraries provide highly flexible, simple components that can be used in any Java application for Solid. The libraries are composed of different modules that follow a layered architectural approach.

Using the libraries as a dependency in your own projects

To use the Inrupt Java Client Libraries in your projects make sure to visit the Getting Started page of the documentation.

Next we will document how to use this repository locally.

Using this repository locally

After cloning the repository locally you can work with the code as follows:

Code build

The project can be built with Maven and a Java 17+ build environment.

 ./mvnw install

Running tests

The repository contains multiple tests. Each module has dedicated unit tests. And there is a module dedicated to integration testing in the integration module. By running the following command all tests (including integration tests) are run:

 ./mvnw test

The integration tests come with a dedicated Mocked Solid Server. Their configuration can be setup in such a way that the integration tests can be run also on live Solid Servers. More about their setup and configuration can be found on the integration test README.

Code coverage

This project uses JaCoCo for generating the code coverage metric that measures how many lines of code are executed during automated tests. To generate the reports (in different formats) run:

 ./mvnw verify

The reports are then placed in the report/target/site folder on the project root.

Issues & Help

Solid Community Forum

If you have questions about working with Solid or just want to share what you’re working on, visit the Solid forum. The Solid forum is a good place to meet the rest of the community.

Bugs and Feature Requests

  • For public feedback, bug reports, and feature requests please file an issue via Github.
  • For non-public feedback or support inquiries please use the Inrupt Service Desk.

Documentation

Changelog

See the Release notes

License

MIT © Inrupt

About

Java Client Libraries for Solid

Resources

Code of conduct

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Java Client Libraries for Solid

Contributor Covenant

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to engineering@inrupt.com.

The Inrupt Java Client Libraries provide highly flexible, simple components that can be used in any Java application for Solid. The libraries are composed of different modules that follow a layered architectural approach.

Using the libraries as a dependency in your own projects

To use the Inrupt Java Client Libraries in your projects make sure to visit the Getting Started page of the documentation.

Next we will document how to use this repository locally.

Using this repository locally

After cloning the repository locally you can work with the code as follows:

Code build

The project can be built with Maven and a Java 17+ build environment.

 ./mvnw install

Running tests

The repository contains multiple tests. Each module has dedicated unit tests. And there is a module dedicated to integration testing in the integration module. By running the following command all tests (including integration tests) are run:

 ./mvnw test

The integration tests come with a dedicated Mocked Solid Server. Their configuration can be setup in such a way that the integration tests can be run also on live Solid Servers. More about their setup and configuration can be found on the integration test README.

Code coverage

This project uses JaCoCo for generating the code coverage metric that measures how many lines of code are executed during automated tests. To generate the reports (in different formats) run:

 ./mvnw verify

The reports are then placed in the report/target/site folder on the project root.

Issues & Help

Solid Community Forum

If you have questions about working with Solid or just want to share what you’re working on, visit the Solid forum. The Solid forum is a good place to meet the rest of the community.

Bugs and Feature Requests

  • For public feedback, bug reports, and feature requests please file an issue via Github.
  • For non-public feedback or support inquiries please use the Inrupt Service Desk.

Documentation

Changelog

See the Release notes

License

MIT © Inrupt

About

Java Client Libraries for Solid

Resources

Code of conduct

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

Java Client Libraries for Solid

Contributor Covenant

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to engineering@inrupt.com.

The Inrupt Java Client Libraries provide highly flexible, simple components that can be used in any Java application for Solid. The libraries are composed of different modules that follow a layered architectural approach.

Using the libraries as a dependency in your own projects

To use the Inrupt Java Client Libraries in your projects make sure to visit the Getting Started page of the documentation.

Next we will document how to use this repository locally.

Using this repository locally

After cloning the repository locally you can work with the code as follows:

Code build

The project can be built with Maven and a Java 17+ build environment.

 ./mvnw install

Running tests

The repository contains multiple tests. Each module has dedicated unit tests. And there is a module dedicated to integration testing in the integration module. By running the following command all tests (including integration tests) are run:

 ./mvnw test

The integration tests come with a dedicated Mocked Solid Server. Their configuration can be setup in such a way that the integration tests can be run also on live Solid Servers. More about their setup and configuration can be found on the integration test README.

Code coverage

This project uses JaCoCo for generating the code coverage metric that measures how many lines of code are executed during automated tests. To generate the reports (in different formats) run:

 ./mvnw verify

The reports are then placed in the report/target/site folder on the project root.

Issues & Help

Solid Community Forum

If you have questions about working with Solid or just want to share what you’re working on, visit the Solid forum. The Solid forum is a good place to meet the rest of the community.

Bugs and Feature Requests

  • For public feedback, bug reports, and feature requests please file an issue via Github.
  • For non-public feedback or support inquiries please use the Inrupt Service Desk.

Documentation

Changelog

See the Release notes

License

MIT © Inrupt

About

Java Client Libraries for Solid

Resources

Code of conduct

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Java Client Libraries for Solid

Contributor Covenant

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to engineering@inrupt.com.

The Inrupt Java Client Libraries provide highly flexible, simple components that can be used in any Java application for Solid. The libraries are composed of different modules that follow a layered architectural approach.

Using the libraries as a dependency in your own projects

To use the Inrupt Java Client Libraries in your projects make sure to visit the Getting Started page of the documentation.

Next we will document how to use this repository locally.

Using this repository locally

After cloning the repository locally you can work with the code as follows:

Code build

The project can be built with Maven and a Java 17+ build environment.

 ./mvnw install

Running tests

The repository contains multiple tests. Each module has dedicated unit tests. And there is a module dedicated to integration testing in the integration module. By running the following command all tests (including integration tests) are run:

 ./mvnw test

The integration tests come with a dedicated Mocked Solid Server. Their configuration can be setup in such a way that the integration tests can be run also on live Solid Servers. More about their setup and configuration can be found on the integration test README.

Code coverage

This project uses JaCoCo for generating the code coverage metric that measures how many lines of code are executed during automated tests. To generate the reports (in different formats) run:

 ./mvnw verify

The reports are then placed in the report/target/site folder on the project root.

Issues & Help

Solid Community Forum

If you have questions about working with Solid or just want to share what you’re working on, visit the Solid forum. The Solid forum is a good place to meet the rest of the community.

Bugs and Feature Requests

  • For public feedback, bug reports, and feature requests please file an issue via Github.
  • For non-public feedback or support inquiries please use the Inrupt Service Desk.

Documentation

Changelog

See the Release notes

License

MIT © Inrupt

About

Java Client Libraries for Solid

Resources

Code of conduct

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Java Client Libraries for Solid

Contributor Covenant

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to engineering@inrupt.com.

The Inrupt Java Client Libraries provide highly flexible, simple components that can be used in any Java application for Solid. The libraries are composed of different modules that follow a layered architectural approach.

Using the libraries as a dependency in your own projects

To use the Inrupt Java Client Libraries in your projects make sure to visit the Getting Started page of the documentation.

Next we will document how to use this repository locally.

Using this repository locally

After cloning the repository locally you can work with the code as follows:

Code build

The project can be built with Maven and a Java 17+ build environment.

 ./mvnw install

Running tests

The repository contains multiple tests. Each module has dedicated unit tests. And there is a module dedicated to integration testing in the integration module. By running the following command all tests (including integration tests) are run:

 ./mvnw test

The integration tests come with a dedicated Mocked Solid Server. Their configuration can be setup in such a way that the integration tests can be run also on live Solid Servers. More about their setup and configuration can be found on the integration test README.

Code coverage

This project uses JaCoCo for generating the code coverage metric that measures how many lines of code are executed during automated tests. To generate the reports (in different formats) run:

 ./mvnw verify

The reports are then placed in the report/target/site folder on the project root.

Issues & Help

Solid Community Forum

If you have questions about working with Solid or just want to share what you’re working on, visit the Solid forum. The Solid forum is a good place to meet the rest of the community.

Bugs and Feature Requests

  • For public feedback, bug reports, and feature requests please file an issue via Github.
  • For non-public feedback or support inquiries please use the Inrupt Service Desk.

Documentation

Changelog

See the Release notes

License

MIT © Inrupt

About

Java Client Libraries for Solid

Resources

Code of conduct

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

Java Client Libraries for Solid

Contributor Covenant

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to engineering@inrupt.com.

The Inrupt Java Client Libraries provide highly flexible, simple components that can be used in any Java application for Solid. The libraries are composed of different modules that follow a layered architectural approach.

Using the libraries as a dependency in your own projects

To use the Inrupt Java Client Libraries in your projects make sure to visit the Getting Started page of the documentation.

Next we will document how to use this repository locally.

Using this repository locally

After cloning the repository locally you can work with the code as follows:

Code build

The project can be built with Maven and a Java 17+ build environment.

 ./mvnw install

Running tests

The repository contains multiple tests. Each module has dedicated unit tests. And there is a module dedicated to integration testing in the integration module. By running the following command all tests (including integration tests) are run:

 ./mvnw test

The integration tests come with a dedicated Mocked Solid Server. Their configuration can be setup in such a way that the integration tests can be run also on live Solid Servers. More about their setup and configuration can be found on the integration test README.

Code coverage

This project uses JaCoCo for generating the code coverage metric that measures how many lines of code are executed during automated tests. To generate the reports (in different formats) run:

 ./mvnw verify

The reports are then placed in the report/target/site folder on the project root.

Issues & Help

Solid Community Forum

If you have questions about working with Solid or just want to share what you’re working on, visit the Solid forum. The Solid forum is a good place to meet the rest of the community.

Bugs and Feature Requests

  • For public feedback, bug reports, and feature requests please file an issue via Github.
  • For non-public feedback or support inquiries please use the Inrupt Service Desk.

Documentation

Changelog

See the Release notes

License

MIT © Inrupt

About

Java Client Libraries for Solid

Resources

Code of conduct

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages