Loading ...
Sorry, an error occurred while loading the content.
 

Django REST framework - Critical feedback wanted.

Expand Messages
  • tomchristie0
    Hi all, I ve just released a new Web API framework and I was hoping to solicit some constructive feedback on the project. The full documentation is available
    Message 1 of 5 , Mar 2, 2011
      Hi all,

        I've just released a new Web API framework and I was hoping to solicit some constructive feedback on the project.

      The full documentation is available here http://django-rest- framework.org, but as a quick overview...

      * The default HTML media type emitter renders a really nice Django admin-styled API.  Eg: http://api.django-rest- framework.org
      * Encourages good REST-over-HTTP design - you'd have to really try hard to build an API with the framework that wasn't self-describing and well-connected.
      * Architecturally I think it's a pretty solid effort - it tries to go with the Django grain wherever possible.  (Although I guess that aspect might be outside the scope of this particular forum.)

      The browse-able API is definitely the aspect I'm most pleased with, it supports full GET/PUT/POST/DELETE on resources, and works nicely both for generic resources, and for resources that are tied to forms and/or models.  For example:

      http://api.django-rest- framework.org/pygments/  (Resource tied to a Django form)
      http://api.django-rest- framework.org/blog-post/  (Resource tied to a Django model)

      The 0.1 release went out last week, so obviously I still have lots of work I'd like to do.  HEAD/OPTIONS/TRACE/PATCH, work on authentication & permissions, encouraging hyper-linked resources over nested resource representations, good caching support and a stack of others all spring to mind.

      Some areas I'd appreciate input on would be...

      * What do you think I've gotten right or wrong in the design?
      * What are your thoughts on the admin-style browse-able API, which other frameworks do something similar and how does it compare?
      * What do you think I should consider as priorities in further releases?
      * How can I further encourage good REST-over-HTTP design with the framework?

      Any and all thoughts would be most welcome!

      Regards,

        Tom
    • Subbu Allamaraju
      Any reason the response includes an Allow: GET and Vary for Allow? Is the server varying the representation by Allow?
      Message 2 of 5 , Mar 2, 2011
        Any reason the response includes an Allow: GET and Vary for Allow? Is the server varying the representation by Allow?

        On Mar 2, 2011, at 4:18 AM, tomchristie0 wrote:

        >
        >
        > Hi all,
        >
        > I've just released a new Web API framework and I was hoping to solicit some constructive feedback on the project.
        >
        > The full documentation is available here http://django-rest-framework.org, but as a quick overview...
        >
        > * The default HTML media type emitter renders a really nice Django admin-styled API. Eg: http://api.django-rest-framework.org
        > * Encourages good REST-over-HTTP design - you'd have to really try hard to build an API with the framework that wasn't self-describing and well-connected.
        > * Architecturally I think it's a pretty solid effort - it tries to go with the Django grain wherever possible. (Although I guess that aspect might be outside the scope of this particular forum.)
        >
        > The browse-able API is definitely the aspect I'm most pleased with, it supports full GET/PUT/POST/DELETE on resources, and works nicely both for generic resources, and for resources that are tied to forms and/or models. For example:
        >
        > http://api.django-rest-framework.org/object-store/ (Generic resource)
        > http://api.django-rest-framework.org/pygments/ (Resource tied to a Django form)
        > http://api.django-rest-framework.org/blog-post/ (Resource tied to a Django model)
        >
        > The 0.1 release went out last week, so obviously I still have lots of work I'd like to do. HEAD/OPTIONS/TRACE/PATCH, work on authentication & permissions, encouraging hyper-linked resources over nested resource representations, good caching support and a stack of others all spring to mind.
        >
        > Some areas I'd appreciate input on would be...
        >
        > * What do you think I've gotten right or wrong in the design?
        > * What are your thoughts on the admin-style browse-able API, which other frameworks do something similar and how does it compare?
        > * What do you think I should consider as priorities in further releases?
        > * How can I further encourage good REST-over-HTTP design with the framework?
        >
        > Any and all thoughts would be most welcome!
        >
        > Regards,
        >
        > Tom
        >
        >
        >
      • tom christie
        Thanks for pointing that out. It s meant to be an Accept in the Vary header, not Allow. I ve fixed the (glaring) bug now, and it ll get pushed to the example
        Message 3 of 5 , Mar 3, 2011
          Thanks for pointing that out.  It's meant to be an Accept in the Vary header, not Allow.  I've fixed the (glaring) bug now, and it'll get pushed to the example server and rolled into a fixed release in due course.

          On 3 March 2011 05:45, Subbu Allamaraju <subbu@...> wrote:
          Any reason the response includes an Allow: GET and Vary for Allow? Is the server varying the representation by Allow?

          On Mar 2, 2011, at 4:18 AM, tomchristie0 wrote:

          >
          >
          > Hi all,
          >
          >   I've just released a new Web API framework and I was hoping to solicit some constructive feedback on the project.
          >
          > The full documentation is available here http://django-rest-framework.org, but as a quick overview...
          >
          > * The default HTML media type emitter renders a really nice Django admin-styled API.  Eg: http://api.django-rest-framework.org
          > * Encourages good REST-over-HTTP design - you'd have to really try hard to build an API with the framework that wasn't self-describing and well-connected.
          > * Architecturally I think it's a pretty solid effort - it tries to go with the Django grain wherever possible.  (Although I guess that aspect might be outside the scope of this particular forum.)
          >
          > The browse-able API is definitely the aspect I'm most pleased with, it supports full GET/PUT/POST/DELETE on resources, and works nicely both for generic resources, and for resources that are tied to forms and/or models.  For example:
          >
          > http://api.django-rest-framework.org/object-store/  (Generic resource)
          > http://api.django-rest-framework.org/pygments/  (Resource tied to a Django form)
          > http://api.django-rest-framework.org/blog-post/  (Resource tied to a Django model)
          >
          > The 0.1 release went out last week, so obviously I still have lots of work I'd like to do.  HEAD/OPTIONS/TRACE/PATCH, work on authentication & permissions, encouraging hyper-linked resources over nested resource representations, good caching support and a stack of others all spring to mind.
          >
          > Some areas I'd appreciate input on would be...
          >
          > * What do you think I've gotten right or wrong in the design?
          > * What are your thoughts on the admin-style browse-able API, which other frameworks do something similar and how does it compare?
          > * What do you think I should consider as priorities in further releases?
          > * How can I further encourage good REST-over-HTTP design with the framework?
          >
          > Any and all thoughts would be most welcome!
          >
          > Regards,
          >
          >   Tom
          >
          >
          >


        • Rajeev J Sebastian
          This is pretty good :) Will definitely give it a shot in an upcoming project. -- Rajeev J Sebastian
          Message 4 of 5 , Mar 5, 2011
            This is pretty good :) 

            Will definitely give it a shot in an upcoming project.

            -- 
            Rajeev J Sebastian

            On Thursday, March 3, 2011 at 1:42 PM, tom christie wrote:

             

            Thanks for pointing that out.  It's meant to be an Accept in the Vary header, not Allow.  I've fixed the (glaring) bug now, and it'll get pushed to the example server and rolled into a fixed release in due course.

            On 3 March 2011 05:45, Subbu Allamaraju <subbu@...> wrote:
            Any reason the response includes an Allow: GET and Vary for Allow? Is the server varying the representation by Allow?

            On Mar 2, 2011, at 4:18 AM, tomchristie0 wrote:

            >
            >
            > Hi all,
            >
            >   I've just released a new Web API framework and I was hoping to solicit some constructive feedback on the project.
            >
            > The full documentation is available here http://django-rest-framework.org, but as a quick overview...
            >
            > * The default HTML media type emitter renders a really nice Django admin-styled API.  Eg: http://api.django-rest-framework.org
            > * Encourages good REST-over-HTTP design - you'd have to really try hard to build an API with the framework that wasn't self-describing and well-connected.
            > * Architecturally I think it's a pretty solid effort - it tries to go with the Django grain wherever possible.  (Although I guess that aspect might be outside the scope of this particular forum.)
            >
            > The browse-able API is definitely the aspect I'm most pleased with, it supports full GET/PUT/POST/DELETE on resources, and works nicely both for generic resources, and for resources that are tied to forms and/or models.  For example:
            >
            > http://api.django-rest-framework.org/object-store/  (Generic resource)
            > http://api.django-rest-framework.org/pygments/  (Resource tied to a Django form)
            > http://api.django-rest-framework.org/blog-post/  (Resource tied to a Django model)
            >
            > The 0.1 release went out last week, so obviously I still have lots of work I'd like to do.  HEAD/OPTIONS/TRACE/PATCH, work on authentication & permissions, encouraging hyper-linked resources over nested resource representations, good caching support and a stack of others all spring to mind.
            >
            > Some areas I'd appreciate input on would be...
            >
            > * What do you think I've gotten right or wrong in the design?
            > * What are your thoughts on the admin-style browse-able API, which other frameworks do something similar and how does it compare?
            > * What do you think I should consider as priorities in further releases?
            > * How can I further encourage good REST-over-HTTP design with the framework?
            >
            > Any and all thoughts would be most welcome!
            >
            > Regards,
            >
            >   Tom
            >
            >
            >



          • Rajeev J Sebastian
            Will do! -- Rajeev J Sebastian
            Message 5 of 5 , Mar 5, 2011

              Will do!

              -- 
              Rajeev J Sebastian

              On Saturday, March 5, 2011 at 6:05 PM, Tom Christie wrote:

              Thanks!  I'm really pleased with how it's looking, the main issue now will be trying to get a community effort behind it - feel free to get in touch if you have any questions when you start using it.

              On 5 Mar 2011, at 09:52, Rajeev J Sebastian <rajeev.sebastian@...> wrote:

              This is pretty good :) 

              Will definitely give it a shot in an upcoming project.

              -- 
              Rajeev J Sebastian

              On Thursday, March 3, 2011 at 1:42 PM, tom christie wrote:

               

              Thanks for pointing that out.  It's meant to be an Accept in the Vary header, not Allow.  I've fixed the (glaring) bug now, and it'll get pushed to the example server and rolled into a fixed release in due course.

              On 3 March 2011 05:45, Subbu Allamaraju <subbu@...> wrote:
              Any reason the response includes an Allow: GET and Vary for Allow? Is the server varying the representation by Allow?

              On Mar 2, 2011, at 4:18 AM, tomchristie0 wrote:

              >
              >
              > Hi all,
              >
              >   I've just released a new Web API framework and I was hoping to solicit some constructive feedback on the project.
              >
              > The full documentation is available here http://django-rest-framework.org, but as a quick overview...
              >
              > * The default HTML media type emitter renders a really nice Django admin-styled API.  Eg: http://api.django-rest-framework.org
              > * Encourages good REST-over-HTTP design - you'd have to really try hard to build an API with the framework that wasn't self-describing and well-connected.
              > * Architecturally I think it's a pretty solid effort - it tries to go with the Django grain wherever possible.  (Although I guess that aspect might be outside the scope of this particular forum.)
              >
              > The browse-able API is definitely the aspect I'm most pleased with, it supports full GET/PUT/POST/DELETE on resources, and works nicely both for generic resources, and for resources that are tied to forms and/or models.  For example:
              >
              > http://api.django-rest-framework.org/object-store/  (Generic resource)
              > http://api.django-rest-framework.org/pygments/  (Resource tied to a Django form)
              > http://api.django-rest-framework.org/blog-post/  (Resource tied to a Django model)
              >
              > The 0.1 release went out last week, so obviously I still have lots of work I'd like to do.  HEAD/OPTIONS/TRACE/PATCH, work on authentication & permissions, encouraging hyper-linked resources over nested resource representations, good caching support and a stack of others all spring to mind.
              >
              > Some areas I'd appreciate input on would be...
              >
              > * What do you think I've gotten right or wrong in the design?
              > * What are your thoughts on the admin-style browse-able API, which other frameworks do something similar and how does it compare?
              > * What do you think I should consider as priorities in further releases?
              > * How can I further encourage good REST-over-HTTP design with the framework?
              >
              > Any and all thoughts would be most welcome!
              >
              > Regards,
              >
              >   Tom
              >
              >
              >




            Your message has been successfully submitted and would be delivered to recipients shortly.