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

Django Suit version 2.0 #475

Open
darklow opened this issue Jan 31, 2016 · 248 comments
Open

Django Suit version 2.0 #475

darklow opened this issue Jan 31, 2016 · 248 comments
Labels
v2

Comments

@darklow
Copy link
Owner

@darklow darklow commented Jan 31, 2016

Brace yourselves, this is going to be a long post!

I have bad news and good news.
The bad news is - Bootstrap 3 branch will be discontinued.
The good news is what is coming instead! 

Some history

Some time after i launched the very first Django Suit (DS) version I realised biggest challenge is to keep up with Django admin changes. And bs3 branch version proved that even more. I haven’t finished it yet as Django admin started changing quite a lot. New templates, new features, new styles etc. Third party apps are also changing and evolving a lot, therefore same problem existed with 3rd party apps too. I knew i needed to solve this issue before continuing.

Flexbox

Recently I did a lot of thinking and experimenting and because browsers have evolved significantly I found an answer to my problems - Flexbox. I’ve been working on Django Suit fresh rewrite for few weeks and haven’t overridden a single Django admin template and in the end of the post you can see real screenshot of what i achieved by CSS only.

So this is a short story how Django Suit v2.0 rewrite started.

I will try to avoid any Django admin templates override as long as possible and if needed i will use JS DOM manipulations instead of overriding templates, which gives a few huge benefits:
When Django admin templates changes, some minor visual bugs may appear, but it will not break anything.

Without overriding admin templates, we have much wider 3rd party app support. Any app that haven’t modified templates too much and use Django admin markup should work perfectly.
This gives us much wider Django version support range, however I think Django Suit will stay with 2-3 recent version support.

What’s new in Django Suit v2

  • Based on Bootstrap 4.0 (currently v4-alpha):
    • Moved from Less to Sass.
    • Flexbox usage and support.
    • Responsive sizing using rem units. To increase whole admin sizing (font-sizes, margins), all you have to do is change font-size for body tag.
  • Django 1.9+
  • Menu rewrite to MenuItem classes
  • FontAwesome icons
  • Demo app is part of Django Suit repository now
  • Toggle-able list top actions if any row is selected
  • Menu:
    • Horizontal navigation
    • Aligned right menu
    • Rewrite whole menu builder to MenuItem classes

So here is the current state of v2.0 rewrite.
No templates overridden except base_site.html:

image

Todo:

  • CSS: Base layout
  • CSS: List base layout
  • Menu builder rewrite
  • Custom admin view example
  • CSS: List states / cell / row attributes
  • CSS: Popups
  • CSS: Forms
    • CSS: Forms base
    • CSS: Regular and collapsible fieldsets
    • Form sizing handling (label and field column proportions)
    • Two column change form with submit row on right
    • Submit buttons debounce - avoid clicking submit twice
    • Form inlines
    • Tabular Inlines
    • Stacked Inlines
    • CSS: Submit row
    • CSS: Floating/fixed Submit row
    • CSS: Delete confirmation
    • Sticky submit box
  • CSS: Alerts & messages
  • Suit Widgets
    • AutosizedTextarea
    • EnclosedInput
    • LinkedSelect
  • Native Widgets
    • CSS: Date & Date time picker
    • CSS: Side to Side chooser
    • CSS: Many to Many select
    • CSS: Many to Many checkboxes
  • CSS: Footer
  • CSS: Responsiveness
  • CSS: Login
  • CSS: Left side menu
  • Horizontal list filters
  • Form Tabs
  • Form Includes
  • Warning on leaving if unconfirmed changes
  • Print styles for list and forms.
  • Sortables
    • For tabular inline
    • For Stacked inline
    • For admin change list
  • Django support:
    • Django 1.9
    • Django 1.10
    • Django 1.11
  • Examples:
    • "Kind of" inlines in inlines / nested inlines solution #475 (comment)
    • Multiple admin sites
    • Django select2 widget
  • Documentation

If you're ok with incomplete features and missing documentation (demo app with all examples is included) then feel free to install or even use it for production (I personally use it in production for a few projects already):

pip install https://github.com/darklow/django-suit/tarball/v2

In requirements.txt:

 -e git://github.com/darklow/django-suit.git@v2#egg=django-suit

Work in progress links:
v2 demo: http://v2.djangosuit.com/admin/
v2 branch: https://github.com/darklow/django-suit/tree/v2
v2 docs: http://django-suit.readthedocs.org/en/v2/

Feel free to share your thoughts.

@darklow darklow added the v2 label Jan 31, 2016
@chris-erickson
Copy link

@chris-erickson chris-erickson commented Jan 31, 2016

We use Suit on every project (paid!), and it looks like the future is going to be good. 🎩 Really appreciate the work you've done.

@fyaconiello
Copy link

@fyaconiello fyaconiello commented Feb 1, 2016

Any ballpark when suit v2 is going to be ready? I have a couple paid django 1.x folks i wanted to upgrade to 1.9, but i'm afraid to break their admin.

@gamesbook
Copy link

@gamesbook gamesbook commented Feb 2, 2016

I really hope we will see support for Django 1.8 as that is a long term release - that could be a deal--breaker.

@gamesbook
Copy link

@gamesbook gamesbook commented Feb 2, 2016

Also hope to see the left-menu option retained as an alternative to the top menu - there was a lot of discussion about this before -- the fact remains that there is simply more horizontal screen space than vertical and avoiding "bar creep" is very desirable.

@darklow
Copy link
Owner Author

@darklow darklow commented Feb 2, 2016

@gamesbook Thanks for your feedback. I'll look into Django 1.8 support. As the stage is early, probably I can adjust it to make work for both. Supporting Django LTS release makes sense.
And I added horizontal menu to features list as well, it was planned, just forgot to mention in roadmap.

@SalahAdDin
Copy link

@SalahAdDin SalahAdDin commented Feb 3, 2016

What's about left or right sidebar?
I want all previous suit versio features.

@gamesbook
Copy link

@gamesbook gamesbook commented Feb 3, 2016

@darklow Thanks for the positive feedback. This a great product that we hope to keep using and deploying further in future. (I see 1.8LTS has planned support through to April 2018).

@darklow
Copy link
Owner Author

@darklow darklow commented Feb 4, 2016

Day by day suit v2 is getting more and more mature.

Status update:

  • List layout fixes
  • Forms base
  • Submit row
  • Delete confimations

PS. You can see total progress in main issue description.

image

v2 demo: http://v2.djangosuit.com/admin/

@darklow
Copy link
Owner Author

@darklow darklow commented Feb 17, 2016

I know many of you will like these features that I just deployed ;)

  • Two column change form with submit row on right (with responsive fallback to bottom)
  • AutoSized textarea

You can see full list of updates in v2 branch commit log:
https://github.com/darklow/django-suit/commits/v2

v2 demo:
http://v2.djangosuit.com/admin/demo/country/170/change/

image

@nchampsavoir
Copy link

@nchampsavoir nchampsavoir commented Feb 17, 2016

This is really shaping up quite nicely. :)

2016-02-17 16:39 GMT+01:00 Kaspars Sprogis notifications@github.com:

I know many of you will like these features that I just deployed ;)

  • Two column change form with submit row on right (with responsive
    fallback to bottom)
  • AutoSized textarea

You can see full list of updates in v2 branch commit log:
https://github.com/darklow/django-suit/commits/v2

v2 demo:
http://v2.djangosuit.com/admin/demo/country/170/change/

[image: image]
https://cloud.githubusercontent.com/assets/445304/13114625/f301e576-d59c-11e5-8290-0131349b6af6.png

v2 demo: http://v2.djangosuit.com/admin/


Reply to this email directly or view it on GitHub
#475 (comment)
.

@darklow
Copy link
Owner Author

@darklow darklow commented Feb 18, 2016

If anyone wants to contribute to Django framework and help Django Suit as well, there is a great chance to do it. There is an incomplete pull request at Django repository with a super-valuable feature started, which needs some help to make it to the final line. Author don't have time to finish what he started, however he already did a great job and almost finished it.

Django: Added template-based widget rendering
https://code.djangoproject.com/ticket/15667

Pull request and author comments about what still has to be done to finish it:
django/django#4848 (comment)

I will try to help as much as possible, but i already have my hands full with v2 and other things.
If we could get this PR by Django version 1.10 then no more hacks for widgets are needed and anyone can style any widgets with custom templates. I think this is awesome and very very valuable feature.

Thanks.

@darklow
Copy link
Owner Author

@darklow darklow commented Feb 18, 2016

Isn't this cute? :)
Native Django admin Date/Time widgets:

image

image

image

Live demo: http://v2.djangosuit.com/admin/demo/showcase/add/

@platzhersh
Copy link

@platzhersh platzhersh commented Feb 18, 2016

@luflow
Copy link

@luflow luflow commented Feb 18, 2016

Awesome!

@darklow
Copy link
Owner Author

@darklow darklow commented Feb 19, 2016

Some users with existing licenses asked if they can contribute or buy an upgrade fee for v2 in advance.
So even if this is complete rewrite, all you current licenses will be valid for v2 and therefore will be no upgrade fee. If you want to show your appreciation and support development of v2, you can use Donate feature or buy an extra license here:
http://djangosuit.com/pricing/#v2
Thank you!

@darklow
Copy link
Owner Author

@darklow darklow commented Feb 19, 2016

Sortables for change list and tabular inlines are ready!
http://v2.djangosuit.com/admin/demo/continent/
http://v2.djangosuit.com/admin/demo/continent/9/change/

Tips and Tricks
By these years I've learned a lot of how to extend Django admin and in new v2 documentation I will share a lot of my knowledge how to do that too.

Just added to demo app how to extend submit_line.html, object-tools or add custom admin actions for specific ModelAdmin:
http://v2.djangosuit.com/admin/demo/showcase/1/change/
https://github.com/darklow/django-suit/blob/v2/demo/demo/templatetags/demo_tags.py#L6
https://github.com/darklow/django-suit/blob/v2/demo/demo/admin.py#L190
https://github.com/darklow/django-suit/blob/v2/demo/demo/admin.py#L119

Hope you find it useful ;)

@SalahAdDin
Copy link

@SalahAdDin SalahAdDin commented Feb 22, 2016

👍

@darklow
Copy link
Owner Author

@darklow darklow commented Mar 3, 2016

Stacked inlines including Sortable Stacked inlines are now ready!
http://v2.djangosuit.com/admin/demo/showcase/1/change/
image

@SalahAdDin
Copy link

@SalahAdDin SalahAdDin commented Mar 3, 2016

👍 I like it man!

@darklow
Copy link
Owner Author

@darklow darklow commented Mar 3, 2016

Anyone using v2.0 alpha in development already or is it just me? :)

@otondin
Copy link

@otondin otondin commented Mar 3, 2016

It's getting gorgeous! 👍

@landaverdelbo
Copy link

@landaverdelbo landaverdelbo commented Mar 4, 2016

me in mexico, for school management - testing...

@darklow
Copy link
Owner Author

@darklow darklow commented Mar 5, 2016

Happy to announce next two handy features that are finished:

  • Form Tabs
  • Form Includes

Beta release is coming closer by each day!
http://v2.djangosuit.com/admin/demo/country/170/change/

image

image

@EOSIT
Copy link

@EOSIT EOSIT commented Sep 10, 2018

@ArnoldGitHub Am I missing something? - the very first commit in that series (v.0.2.26...v2) is called:

Fresh start - v2.0a1

@ArnoldGitHub
Copy link

@ArnoldGitHub ArnoldGitHub commented Sep 10, 2018

Sorry, my fault, i incorrectly used "pip install django-suit", instead of the correct "pip install https://github.com/darklow/django-suit/tarball/v2"

@majbah08
Copy link

@majbah08 majbah08 commented Nov 8, 2018

tables are not responsive, how can solve it for v2 . thanks in advance

@tjerkw
Copy link

@tjerkw tjerkw commented Apr 26, 2019

Whats the status of this? Should we drop django suits?

@kamilgregorczyk
Copy link

@kamilgregorczyk kamilgregorczyk commented Apr 27, 2019

It looks abandoned

@SalahAdDin
Copy link

@SalahAdDin SalahAdDin commented Apr 28, 2019

Yeah, it looks like.

@willseward
Copy link

@willseward willseward commented May 2, 2019

ping @darklow

Is this abandoned?

@darklow
Copy link
Owner Author

@darklow darklow commented May 2, 2019

I use Django Suit (v2-dev version) for all my projects every day, however I have no time working on new features, yet I am using Django suit v2-dev on 10+ production projects without any issues with latest Django 2.x versions.

So project is not abandoned, and all critical pull requests have been approved, however new feature development is not planned in nearest time nor I have time to write docs for v2. Remember that this is just a skin on top of awesome Django admin app and you can easily extend things with template override or css or js.

@ebertti
Copy link
Contributor

@ebertti ebertti commented May 2, 2019

I use v2-dev version too.

It works fine for me.

@gamesbook
Copy link

@gamesbook gamesbook commented May 3, 2019

@darklow Despite those limits it would be really great to have a PyPi release of version 2.x (the last release was over a year ago).

@darklow
Copy link
Owner Author

@darklow darklow commented May 3, 2019

@gamesbook My only worry releasing pypi version of v2.x is that there are no docs for v2 and users are used to upgrade without looking at versions much and installing v2 over old v1 may break their apps and there are even no docs to see how to properly use v2 except the demo app.

@gamesbook
Copy link

@gamesbook gamesbook commented May 4, 2019

@darklow It could be released as an "Alpha" with the README upfront saying "NO DOCS. DO NOT USE TO UPGRADE FROM v1". I think developers are a bit smarter than just blindly running an "upgrade".

@diegoasencio96
Copy link

@diegoasencio96 diegoasencio96 commented May 10, 2019

¿Alguien que ya usa v2.0 alpha en desarrollo o es solo yo? :)

Yoooo también la uso y me parece suprema mente espectacular!!!. Saludos desde Colombia, suit v2 es un gran aporte !!! felicitaciones!!! realmente admirado con este trabajo que cada día se hace mas elegante.

@diegoasencio96
Copy link

@diegoasencio96 diegoasencio96 commented May 10, 2019

@gamesbook Mi única preocupación al lanzar la versión pypi de v2.x es que no hay documentos para v2 y los usuarios están acostumbrados a actualizar sin mirar mucho las versiones y la instalación de v2 sobre la v1 anterior puede romper sus aplicaciones e incluso no hay documentos para ver cómo para utilizar correctamente v2, excepto la aplicación de demostración.

Con la demo y un poco de astusia, es suficiente jejeje

@tjerkw
Copy link

@tjerkw tjerkw commented May 15, 2019

@darklow +1 for releasing this as an alpha!

@Lessica
Copy link

@Lessica Lessica commented Dec 7, 2019

Django Suit is great! I used 2.0 in my open-source project DCRM.

@tyctor
Copy link

@tyctor tyctor commented Dec 11, 2019

I use Django Suit (v2-dev version) for all my projects every day, however I have no time working on new features, yet I am using Django suit v2-dev on 10+ production projects without any issues with latest Django 2.x versions.

@darklow you probably meant Django 2.0.x versions, because from Django 2.1. there is jQuery 3.3.1 (instead of previous 2.2.3), which will not work with suit.sortables.js because $(this).selector is not supported anymore
so note for everyone who want to use Django 2.1.x or higher, your SortableAdmin wil not work due to that change

@madthew
Copy link

@madthew madthew commented Dec 27, 2019

will there be a Django 3 compatible version?

@geceba
Copy link

@geceba geceba commented Jan 10, 2020

@madthew At the moment I have not found a problem
Related fix: #711

@dlooto
Copy link

@dlooto dlooto commented Jan 12, 2020

Why not support Django3.0 and Python 3.8+ ? Thanks~

@darklow
Copy link
Owner Author

@darklow darklow commented Jan 12, 2020

Why not support Django3.0 and Python 3.8+ ? Thanks~

Have you tried? I'm using v2 with Django 3.0 and Python 3.6.4 without issues.

@niteshrawat1995
Copy link

@niteshrawat1995 niteshrawat1995 commented Feb 3, 2020

Hi @darklow can we implement the apps reorder functionality with v2 ? I am talking about this: https://django-suit.readthedocs.io/en/latest/configuration.html.

@darklow
Copy link
Owner Author

@darklow darklow commented Feb 3, 2020

Hi @darklow can we implement the apps reorder functionality with v2 ? I am talking about this: https://django-suit.readthedocs.io/en/latest/configuration.html.

You can already do this, see v2 demo app and its code:
https://github.com/darklow/django-suit/blob/v2/demo/demo/apps.py

@niteshrawat1995
Copy link

@niteshrawat1995 niteshrawat1995 commented Feb 3, 2020

Hi @darklow , price schemes of v2 is same as v1 right ?

@niteshrawat1995
Copy link

@niteshrawat1995 niteshrawat1995 commented Feb 3, 2020

@darklow bro how can i override the templates like base_site.html , login.html of admin with your changes intact. I tries to directly override them via templates/admin/base_site.html but it removed your changes which were overlapping.

@darklow
Copy link
Owner Author

@darklow darklow commented Feb 3, 2020

Hi @darklow , price schemes of v2 is same as v1 right ?
Yes, and v1 licenses are valid for v2 too.

@darklow bro how can i override the templates like base_site.html , login.html of admin with your changes intact. I tries to directly override them via templates/admin/base_site.html but it removed your changes which were overlapping.

See example in demo app:
https://github.com/darklow/django-suit/blob/v2/demo/demo/templates/admin/base_site.html

@pablovg2
Copy link

@pablovg2 pablovg2 commented Apr 16, 2020

Hi, I am using this version but I have a problem with popup they are open in the same windows without popup

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
You can’t perform that action at this time.