Comments (13)
Since it seems like the UI is going to be majorly reworked: thoughts on adding "looks at least somewhat decent on mobile" to the list? (especially the admin interface, so admin stuff can be done from a mobile device)
from reposilite.
The only thing I'm missing is an indexer+search built-in.
That's it :)
from reposilite.
also, one note: you mentioned using jte.
for me personally, jte is kinda okay-ish. I'd just like to add freemarker as a suggestion for a templating engine to consider.
there's also thymeleaf, which I've been using for my personal site. the experience has been okay-ish (solonovamax/solonovamax.gay if you wanna look at how I do stuff. kotlin + ktor.), but there have been a few kinda jank-ish parts, but other than that it's been nice.
from reposilite.
Since it seems like the UI is going to be majorly reworked: thoughts on adding "looks at least somewhat decent on mobile" to the list? (especially the admin interface, so admin stuff can be done from a mobile device)
Sure, the mobile support should be way better there. In current UI, it's mainly blocked by the tabs & jsonforms libraries, but it's a minor issue, so I didn't decide to invest my time into it for now.
I'd just like to add freemarker as a suggestion for a templating engine to consider. there's also thymeleaf, which I've been using for my personal site. [...]
When I'm thinking about a desired stack for a new frontend, I want to cover these 3 crucial requirements:
- Get rid of a translation layer between backend and frontend (optimized template engine)
- Avoid covering with JS basic CRUD operations (frontend framework that covers the most common boilerplate code)
- Interface should become a part of the plugin api, so it'll be customizable to some degree (some sort of a component system)
The main reason behind JTE choice is performance - it provides a compilation mode, where it generates classes for all template components:
This + a possibility to implement Node-like hot reloading makes it a good candidate. It has some issues tho - writing a JavaScript code inside a template might be a bit painful. Even if HTMX/Unpolly/something similar would cover most of the features, there are still some side cases, when we may need to cover with JS. Raw JS/state management is kind rough, so we could try to utilize something like Preact locally, for some specific features.
from reposilite.
The only thing I'm missing is an indexer+search built-in.
That's it :)
I was working on that for a bit as a plugin sometime ago, and may continue it one day™ (or I might just forgor again)
from reposilite.
Maybe not too related to Reposilite. But what about an integrated docker registry?
from reposilite.
Yes, the Docker registry would be absolutely great. Unfortunately, it requires a lot of work, as the specification seems to be quite complex - there's an issue for that:
It'd be nice to document all things we need to do (from specification perspective), so later on we could try to estimate if we'll be able to do that or not.
from reposilite.
Maybe not too related to Reposilite. But what about an integrated docker registry?
There is already Harbor for that, so I don't think it is strictly necessary. I do appreciate Reposilite's focus on providing great light weight solution for hosting Maven repositories.
from reposilite.
Yeah you're right. There is enough software which is already capable of providing a registry and reposilite should stay simple-ish
from reposilite.
I'd like to see support for byte ranges. I want to use reposilite as a simple arch mirror, and arch is complaining about failed downloads.
from reposilite.
Maybe not too related to Reposilite. But what about an integrated docker registry?
There is already Harbor for that, so I don't think it is strictly necessary. I do appreciate Reposilite's focus on providing great light weight solution for hosting Maven repositories.
Well, yes and no. These days, you're often distributing JVM apps as containers, so it'd be kinda nice to have it supported at some point - I could even distribute Reposilite itself there. Of course, it can't be considered as the new main target, because we don't have enough resources to compete with dedicated tools, like e.g. Harbor. Hopefully, something like that should be possible to implement purely as an optional plugin.
I'd like to see support for byte ranges. I want to use reposilite as a simple arch mirror, and arch is complaining about failed downloads.
It'd be nice if you could submit a new issue with a bit more detailed description. As long as we don't aim to support arch itself, supporting http range requests probably could be a thing.
from reposilite.
One thing I would like to see is the ability to customize the appearance
from reposilite.
yeah, the ability to provide your own css styles/themes would be quite nice
ie. use the default frontend, but just have some customized css (ie. to make the frontend a bit less "harsh")
also here's a few misc. things:
-
smth I thought of a while back that would be nice is: the ability to store cached files from a proxied/mirrored repository in a separate location.
so, for example, the contents of the
releases
(that have been uploaded directly to the repo) repo could be stored inrepo/releases
.
but then, say you're mirroringfoo.com
andbar.net
(and reposilite is configured to store those artifacts)
then, the artifacts from each of those would be located in smth likemirrors/releases/foo.com
andmirrors/releases/bar.net
.with this, you'd also be able to provide the following things:
- add a badge on remote artifacts/modules to indicate they're from a mirror (& maybe which mirror they're from?)
- allow administrators to set storage limits on mirrored artifacts and use smth like an LRU policy to discard old cached artifacts.
-
the ability to change the name of the repository provided in the generated "repository details" for maven, gradle kotlin, gradle groovy, and sbt. (eg. I'd like the "name" to be smth specific rather than what was generated, as well as using specific capitalization, etc.)
-
since you're looking at making the frontend part of the plugin api, should a search plugin be added to the roadmap? if it is, I could start that one thing I was working on a while ago with maven-indexer back up.
-
funny numbers: it would be cool if the statistics showed more information. for example:
- a list of artifacts by popularity (eg. "here are the top 10 most downloaded artifacts in [time interval]: this artifact has been downloaded 123 times in the past [time interval]"
- also maybe aggregate stats information, such as which modules have the most downloads, which versions of a certain module have the most downloads, etc.
- showing shit like how many of the downloaded artifacts are from mirrored repos or not (ie. "123 downloads from the local repo, 123 downloads from cached mirrored artifacts, and 123 from uncached mirrored artifacts)"
- which mirrors are the most "popular"? (eg. "123 downloads from mirror foo, 123 downloads from mirror bar")
unsure if this might be better suited for just sending that data to prometheus and using grafana for this, though.
-
minor change to the badges api: support for different styles (see: https://shields.io/badges), eg.
flat
,flat-square
,plastic
(current),for-the-badge
, andsocial
. -
increased visibility of metadata via a dashboard for a specific version. eg. when clicking on a specific version of an artifact, it will list (all of this is in the pom.xml)
- the name (which may be different from the module name. see: the
name
field in the POM) - if it is a snapshot (some repos could be used to store versions & releases)
- the description
- the author/developers (+ contributors?)
- the license(s)
- the issues/repo url
- the inception year
- the dependencies
- the name (which may be different from the module name. see: the
-
the ability to have "repository overlays" or to "inherit repositories".
eg. let's say I havesnapshots
andreleases
. when a user adds thesnapshots
repo and attempts to fetch a version from it, but said version does not exist in it (or any of its mirrors), it would be nice if it then went and checked if it existed in thereleases
repo. so,snapshots
falls back on/inherits from/is an overlay on top ofreleases
.
~ edit: merged both comments / @dzikoysk
from reposilite.
Related Issues (20)
- 3.5.2 seems to be unstable, despite having enough resources HOT 1
- Release 3.5.3 HOT 1
- Ability to disable logging to file and `Journalist` HOT 3
- Add IP to auth error log so that fail2ban can catch it HOT 5
- FileSystemStorageProvider throws FileAlreadyExistsException during concurrent put operation HOT 4
- Move to Javalin 6.0
- Built-in mechanism to protect token secrets from brute force
- NoSuchFileException for some javadoc related files
- Release 3.5.5 HOT 1
- `FileSystemStorageProvider#putFile` hangs infinitely
- I still get the `FileAlreadyExistsException` even with Reposilite 3.5.5. HOT 4
- Handle concurrent mirror requests via a resilient queue to avoid inefficient race condition on fs files HOT 5
- Release 3.5.6 HOT 1
- SwaggerPlugin not working in 3.5.6
- Release 3.5.7 HOT 1
- 401 Invalid Authorization Credentials using LDAP auth HOT 5
- Reposilite should search all mirrors when looking up the last version of a package HOT 1
- Incorrectly Classifier Jar File Downloaded from Mirror Repository HOT 7
- Reposilite 3.5.7 fails with java.lang.IllegalMonitorStateException HOT 2
- Release 3.5.8 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from reposilite.