Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make this repository a python package that can be easily installed via Django #292

Open
1 task done
Raruto opened this issue Jan 10, 2023 · 0 comments
Open
1 task done
Assignees
Labels
feature New feature or request

Comments

@Raruto
Copy link
Collaborator

Raruto commented Jan 10, 2023

Checklist

  • I've searched through the current issues to make sure this feature hasn't been requested already.

Motivation

As per g3w-admin v3.5 and g3w-client v3.7:

  1. one of the main obstacles for other developers is represented by the fact that the way to install (and therefore test) different versions of the client is that they should know how to compile and / or update the static files (css and js files) on their local instances.
  2. each code change in the g3w-client repository must be compiled manually and committed to the g3w-admin repository (with the relative danger of uploading versions of files that are not consistent with what was committed)
  3. in case someone wants to create automations (e.g. test and deploy scripts), they need to write additional dedicated code to maintain to support this "non-standard" installation mode (i.e. partially compliant with python / django guidelines on developing reusable packages)

Suggested solution

Add the dist or client folder (ref: g3w-admin/g3w-admin/client/) to the version control where we will insert all the necessary code needed to make this repository installable (and therefore also developable) through python command line, ie:

pip3 install git+https://github.com/g3w-suite/g3w-client.git@dev

Here it is a sample repository from which to take some inspiration: GeoNode/geonode-client

Related info:

Alternatives considered

Make this package a pure javascript module (e.g. installable only on node servers), but at the moment this would require a lot of refactoring regarding user authentication and other related client plugins development.

@Raruto Raruto added the feature New feature or request label Jan 10, 2023
@Raruto Raruto self-assigned this Jan 10, 2023
Raruto added a commit that referenced this issue Feb 7, 2023
…ProjectsRegistry~createProject(projectConfig)`

Start addressing: #67

As a result of: #150 we intend to bring the development environment ever closer to the production one.

Related to: #89, #292 and g3w-suite/g3w-suite-docker#79
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant