Customizable open-source content and file management web-app












1















I was asked to build a content and file management web-app for a client. Let's say that this client is a talent agency, and they want to keep track of their stars. For each star, they want to have a modular page with different categories, notes, file uploads, profile photo and biographical stats, etc. They also want a separate page for recruiting future stars. These pages are similar to their own talent, but with slightly different categories and content.



Instead of starting from scratch, I was thinking to piggy-back on an existing open source framework. For example, "stars" could be mapped to "customers" in a CRM, and "potential stars" could be mapped to "leads". But using a CMS or CRM framework may have limitations such as inability to rename sales terms to my specific application.




  • super-users can set content-specific permissions for other users (for example, some users shouldn't see the contract details of the stars, while every user can see the headshot and short bio)


  • basic stats or rankings over all stars


  • filter and text search of stars (for example, males of a certain age)


  • Each "star" or "potential star" needs to have a file repository that can be
    tagged (for example, "concert poster" and then a PDF with tags and notes)


  • must be customized, so that if it's a CRM solution, it should say "potential stars" and not "leads"


  • users must be able to add/edit new content with versioning history


  • software should be open source and we should able to host ourselves



So far I've looked at traditional CMS like Wordpress, Django CMS and some CRM like SuiteCRM, SugarCRM. I've also looked at some DAM (digital asset management) systems, but so far it seems like a need a hybrid of CMS, CRM and DAM. And finally, it's not open source, but something like Evernote would work, if a developer could build static forms and pages that the users then contribute to. I'm not opposed to build it from scratch, but I want to give the customer some options.










share|improve this question


















  • 1





    How about Javascript?

    – Badgy
    Dec 6 '18 at 13:42











  • @Badgy JS would be great, but I didn't find any CMS/CRM frameworks, and don't want to do it all from scratch

    – philshem
    Dec 7 '18 at 8:51


















1















I was asked to build a content and file management web-app for a client. Let's say that this client is a talent agency, and they want to keep track of their stars. For each star, they want to have a modular page with different categories, notes, file uploads, profile photo and biographical stats, etc. They also want a separate page for recruiting future stars. These pages are similar to their own talent, but with slightly different categories and content.



Instead of starting from scratch, I was thinking to piggy-back on an existing open source framework. For example, "stars" could be mapped to "customers" in a CRM, and "potential stars" could be mapped to "leads". But using a CMS or CRM framework may have limitations such as inability to rename sales terms to my specific application.




  • super-users can set content-specific permissions for other users (for example, some users shouldn't see the contract details of the stars, while every user can see the headshot and short bio)


  • basic stats or rankings over all stars


  • filter and text search of stars (for example, males of a certain age)


  • Each "star" or "potential star" needs to have a file repository that can be
    tagged (for example, "concert poster" and then a PDF with tags and notes)


  • must be customized, so that if it's a CRM solution, it should say "potential stars" and not "leads"


  • users must be able to add/edit new content with versioning history


  • software should be open source and we should able to host ourselves



So far I've looked at traditional CMS like Wordpress, Django CMS and some CRM like SuiteCRM, SugarCRM. I've also looked at some DAM (digital asset management) systems, but so far it seems like a need a hybrid of CMS, CRM and DAM. And finally, it's not open source, but something like Evernote would work, if a developer could build static forms and pages that the users then contribute to. I'm not opposed to build it from scratch, but I want to give the customer some options.










share|improve this question


















  • 1





    How about Javascript?

    – Badgy
    Dec 6 '18 at 13:42











  • @Badgy JS would be great, but I didn't find any CMS/CRM frameworks, and don't want to do it all from scratch

    – philshem
    Dec 7 '18 at 8:51
















1












1








1








I was asked to build a content and file management web-app for a client. Let's say that this client is a talent agency, and they want to keep track of their stars. For each star, they want to have a modular page with different categories, notes, file uploads, profile photo and biographical stats, etc. They also want a separate page for recruiting future stars. These pages are similar to their own talent, but with slightly different categories and content.



Instead of starting from scratch, I was thinking to piggy-back on an existing open source framework. For example, "stars" could be mapped to "customers" in a CRM, and "potential stars" could be mapped to "leads". But using a CMS or CRM framework may have limitations such as inability to rename sales terms to my specific application.




  • super-users can set content-specific permissions for other users (for example, some users shouldn't see the contract details of the stars, while every user can see the headshot and short bio)


  • basic stats or rankings over all stars


  • filter and text search of stars (for example, males of a certain age)


  • Each "star" or "potential star" needs to have a file repository that can be
    tagged (for example, "concert poster" and then a PDF with tags and notes)


  • must be customized, so that if it's a CRM solution, it should say "potential stars" and not "leads"


  • users must be able to add/edit new content with versioning history


  • software should be open source and we should able to host ourselves



So far I've looked at traditional CMS like Wordpress, Django CMS and some CRM like SuiteCRM, SugarCRM. I've also looked at some DAM (digital asset management) systems, but so far it seems like a need a hybrid of CMS, CRM and DAM. And finally, it's not open source, but something like Evernote would work, if a developer could build static forms and pages that the users then contribute to. I'm not opposed to build it from scratch, but I want to give the customer some options.










share|improve this question














I was asked to build a content and file management web-app for a client. Let's say that this client is a talent agency, and they want to keep track of their stars. For each star, they want to have a modular page with different categories, notes, file uploads, profile photo and biographical stats, etc. They also want a separate page for recruiting future stars. These pages are similar to their own talent, but with slightly different categories and content.



Instead of starting from scratch, I was thinking to piggy-back on an existing open source framework. For example, "stars" could be mapped to "customers" in a CRM, and "potential stars" could be mapped to "leads". But using a CMS or CRM framework may have limitations such as inability to rename sales terms to my specific application.




  • super-users can set content-specific permissions for other users (for example, some users shouldn't see the contract details of the stars, while every user can see the headshot and short bio)


  • basic stats or rankings over all stars


  • filter and text search of stars (for example, males of a certain age)


  • Each "star" or "potential star" needs to have a file repository that can be
    tagged (for example, "concert poster" and then a PDF with tags and notes)


  • must be customized, so that if it's a CRM solution, it should say "potential stars" and not "leads"


  • users must be able to add/edit new content with versioning history


  • software should be open source and we should able to host ourselves



So far I've looked at traditional CMS like Wordpress, Django CMS and some CRM like SuiteCRM, SugarCRM. I've also looked at some DAM (digital asset management) systems, but so far it seems like a need a hybrid of CMS, CRM and DAM. And finally, it's not open source, but something like Evernote would work, if a developer could build static forms and pages that the users then contribute to. I'm not opposed to build it from scratch, but I want to give the customer some options.







open-source web-apps cms crm digital-asset-management






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Dec 6 '18 at 8:41









philshemphilshem

1115




1115








  • 1





    How about Javascript?

    – Badgy
    Dec 6 '18 at 13:42











  • @Badgy JS would be great, but I didn't find any CMS/CRM frameworks, and don't want to do it all from scratch

    – philshem
    Dec 7 '18 at 8:51
















  • 1





    How about Javascript?

    – Badgy
    Dec 6 '18 at 13:42











  • @Badgy JS would be great, but I didn't find any CMS/CRM frameworks, and don't want to do it all from scratch

    – philshem
    Dec 7 '18 at 8:51










1




1





How about Javascript?

– Badgy
Dec 6 '18 at 13:42





How about Javascript?

– Badgy
Dec 6 '18 at 13:42













@Badgy JS would be great, but I didn't find any CMS/CRM frameworks, and don't want to do it all from scratch

– philshem
Dec 7 '18 at 8:51







@Badgy JS would be great, but I didn't find any CMS/CRM frameworks, and don't want to do it all from scratch

– philshem
Dec 7 '18 at 8:51












2 Answers
2






active

oldest

votes


















2














You can use a CMS like Drupal for this, in conjuction with some of its modules. There are a number of ways to achieve this in drupal.




  • For instance, you can have a content type called "Star" with relevant fields like: name, notes, multi-file upload, bio stats etc.


  • Future stars can use the same content type but you use drupal's "taxonomy" for categorization,indicating Future vs Current Stars. This way you can sort/view contacts based on taxonomy. You can also create more tags like "concert poster" etc.


  • you can call the content whatever you want, or even rename later.


  • permissioning/super-user can be done in drupal using a module like content_access and restricting specific fields to certain users/roles.


  • ranking/review of stars can be achieved using the "comments" module, and also the "fivestar" module.


  • you can setup simple or sophsiticated searches using the "views" and search_api* modules.


  • users can add/edit new content with versioning history, based on permissions.


  • it is open source and can be self-hosted.



To use drupal, you will need to invest some time to understand how it works. But it gives you the ability to add additional modules for new functionality as the system grows.






share|improve this answer































    1














    I would suggest Liferay:




    1. Install and start Liferay

    2. Inside Liferay, create a "site".

    3. Create a "Web Content" structure that represents a star. Its fields could be:


      • Name

      • Status (potential or in activity)

      • Popularity (a number that makes sense to you)

      • Picture

      • Introduction

      • List of history events, with for each:

      • Date

      • Even description

      • Picture

      • Contract (a file attachment)

      • Etc



    4. Create a template (in a standard templating language) that can show a star to the public.

    5. Create a theme defining the general aspect of the site (header footer etc)

    6. Create a page that will show your content. It is as simple as drag-and-dropping components (portlets) onto the page. You will probably want to put a main component that will show a star, plus a navigation component and a search component.


    Then:




    1. Create a group for super-users

    2. Create a template like in step 3, but showing more details, for instance the contract.

    3. Create a page that is visible only by super-users, like in step 6 above, but configure it to use the template created for super-users.


    Liferay also offers a categories system so you should probably use it, perhaps you can have categories for countries or for style. In such a case also add a category navigation component to the page.



    Of course, Liferay gives you admin an UI to add/edit stars.




    • Free and open source

    • Disclaimer: I work at a Liferay partner


    Example of creating a Liferay Web Content structure:



    enter image description here






    share|improve this answer



















    • 1





      Hi Nicolas, nice to see you here :)

      – philshem
      Dec 6 '18 at 9:20











    Your Answer








    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "536"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    noCode: true, onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsoftwarerecs.stackexchange.com%2fquestions%2f53523%2fcustomizable-open-source-content-and-file-management-web-app%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    2 Answers
    2






    active

    oldest

    votes








    2 Answers
    2






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    2














    You can use a CMS like Drupal for this, in conjuction with some of its modules. There are a number of ways to achieve this in drupal.




    • For instance, you can have a content type called "Star" with relevant fields like: name, notes, multi-file upload, bio stats etc.


    • Future stars can use the same content type but you use drupal's "taxonomy" for categorization,indicating Future vs Current Stars. This way you can sort/view contacts based on taxonomy. You can also create more tags like "concert poster" etc.


    • you can call the content whatever you want, or even rename later.


    • permissioning/super-user can be done in drupal using a module like content_access and restricting specific fields to certain users/roles.


    • ranking/review of stars can be achieved using the "comments" module, and also the "fivestar" module.


    • you can setup simple or sophsiticated searches using the "views" and search_api* modules.


    • users can add/edit new content with versioning history, based on permissions.


    • it is open source and can be self-hosted.



    To use drupal, you will need to invest some time to understand how it works. But it gives you the ability to add additional modules for new functionality as the system grows.






    share|improve this answer




























      2














      You can use a CMS like Drupal for this, in conjuction with some of its modules. There are a number of ways to achieve this in drupal.




      • For instance, you can have a content type called "Star" with relevant fields like: name, notes, multi-file upload, bio stats etc.


      • Future stars can use the same content type but you use drupal's "taxonomy" for categorization,indicating Future vs Current Stars. This way you can sort/view contacts based on taxonomy. You can also create more tags like "concert poster" etc.


      • you can call the content whatever you want, or even rename later.


      • permissioning/super-user can be done in drupal using a module like content_access and restricting specific fields to certain users/roles.


      • ranking/review of stars can be achieved using the "comments" module, and also the "fivestar" module.


      • you can setup simple or sophsiticated searches using the "views" and search_api* modules.


      • users can add/edit new content with versioning history, based on permissions.


      • it is open source and can be self-hosted.



      To use drupal, you will need to invest some time to understand how it works. But it gives you the ability to add additional modules for new functionality as the system grows.






      share|improve this answer


























        2












        2








        2







        You can use a CMS like Drupal for this, in conjuction with some of its modules. There are a number of ways to achieve this in drupal.




        • For instance, you can have a content type called "Star" with relevant fields like: name, notes, multi-file upload, bio stats etc.


        • Future stars can use the same content type but you use drupal's "taxonomy" for categorization,indicating Future vs Current Stars. This way you can sort/view contacts based on taxonomy. You can also create more tags like "concert poster" etc.


        • you can call the content whatever you want, or even rename later.


        • permissioning/super-user can be done in drupal using a module like content_access and restricting specific fields to certain users/roles.


        • ranking/review of stars can be achieved using the "comments" module, and also the "fivestar" module.


        • you can setup simple or sophsiticated searches using the "views" and search_api* modules.


        • users can add/edit new content with versioning history, based on permissions.


        • it is open source and can be self-hosted.



        To use drupal, you will need to invest some time to understand how it works. But it gives you the ability to add additional modules for new functionality as the system grows.






        share|improve this answer













        You can use a CMS like Drupal for this, in conjuction with some of its modules. There are a number of ways to achieve this in drupal.




        • For instance, you can have a content type called "Star" with relevant fields like: name, notes, multi-file upload, bio stats etc.


        • Future stars can use the same content type but you use drupal's "taxonomy" for categorization,indicating Future vs Current Stars. This way you can sort/view contacts based on taxonomy. You can also create more tags like "concert poster" etc.


        • you can call the content whatever you want, or even rename later.


        • permissioning/super-user can be done in drupal using a module like content_access and restricting specific fields to certain users/roles.


        • ranking/review of stars can be achieved using the "comments" module, and also the "fivestar" module.


        • you can setup simple or sophsiticated searches using the "views" and search_api* modules.


        • users can add/edit new content with versioning history, based on permissions.


        • it is open source and can be self-hosted.



        To use drupal, you will need to invest some time to understand how it works. But it gives you the ability to add additional modules for new functionality as the system grows.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Dec 6 '18 at 9:18









        Z ZZ Z

        46626




        46626























            1














            I would suggest Liferay:




            1. Install and start Liferay

            2. Inside Liferay, create a "site".

            3. Create a "Web Content" structure that represents a star. Its fields could be:


              • Name

              • Status (potential or in activity)

              • Popularity (a number that makes sense to you)

              • Picture

              • Introduction

              • List of history events, with for each:

              • Date

              • Even description

              • Picture

              • Contract (a file attachment)

              • Etc



            4. Create a template (in a standard templating language) that can show a star to the public.

            5. Create a theme defining the general aspect of the site (header footer etc)

            6. Create a page that will show your content. It is as simple as drag-and-dropping components (portlets) onto the page. You will probably want to put a main component that will show a star, plus a navigation component and a search component.


            Then:




            1. Create a group for super-users

            2. Create a template like in step 3, but showing more details, for instance the contract.

            3. Create a page that is visible only by super-users, like in step 6 above, but configure it to use the template created for super-users.


            Liferay also offers a categories system so you should probably use it, perhaps you can have categories for countries or for style. In such a case also add a category navigation component to the page.



            Of course, Liferay gives you admin an UI to add/edit stars.




            • Free and open source

            • Disclaimer: I work at a Liferay partner


            Example of creating a Liferay Web Content structure:



            enter image description here






            share|improve this answer



















            • 1





              Hi Nicolas, nice to see you here :)

              – philshem
              Dec 6 '18 at 9:20
















            1














            I would suggest Liferay:




            1. Install and start Liferay

            2. Inside Liferay, create a "site".

            3. Create a "Web Content" structure that represents a star. Its fields could be:


              • Name

              • Status (potential or in activity)

              • Popularity (a number that makes sense to you)

              • Picture

              • Introduction

              • List of history events, with for each:

              • Date

              • Even description

              • Picture

              • Contract (a file attachment)

              • Etc



            4. Create a template (in a standard templating language) that can show a star to the public.

            5. Create a theme defining the general aspect of the site (header footer etc)

            6. Create a page that will show your content. It is as simple as drag-and-dropping components (portlets) onto the page. You will probably want to put a main component that will show a star, plus a navigation component and a search component.


            Then:




            1. Create a group for super-users

            2. Create a template like in step 3, but showing more details, for instance the contract.

            3. Create a page that is visible only by super-users, like in step 6 above, but configure it to use the template created for super-users.


            Liferay also offers a categories system so you should probably use it, perhaps you can have categories for countries or for style. In such a case also add a category navigation component to the page.



            Of course, Liferay gives you admin an UI to add/edit stars.




            • Free and open source

            • Disclaimer: I work at a Liferay partner


            Example of creating a Liferay Web Content structure:



            enter image description here






            share|improve this answer



















            • 1





              Hi Nicolas, nice to see you here :)

              – philshem
              Dec 6 '18 at 9:20














            1












            1








            1







            I would suggest Liferay:




            1. Install and start Liferay

            2. Inside Liferay, create a "site".

            3. Create a "Web Content" structure that represents a star. Its fields could be:


              • Name

              • Status (potential or in activity)

              • Popularity (a number that makes sense to you)

              • Picture

              • Introduction

              • List of history events, with for each:

              • Date

              • Even description

              • Picture

              • Contract (a file attachment)

              • Etc



            4. Create a template (in a standard templating language) that can show a star to the public.

            5. Create a theme defining the general aspect of the site (header footer etc)

            6. Create a page that will show your content. It is as simple as drag-and-dropping components (portlets) onto the page. You will probably want to put a main component that will show a star, plus a navigation component and a search component.


            Then:




            1. Create a group for super-users

            2. Create a template like in step 3, but showing more details, for instance the contract.

            3. Create a page that is visible only by super-users, like in step 6 above, but configure it to use the template created for super-users.


            Liferay also offers a categories system so you should probably use it, perhaps you can have categories for countries or for style. In such a case also add a category navigation component to the page.



            Of course, Liferay gives you admin an UI to add/edit stars.




            • Free and open source

            • Disclaimer: I work at a Liferay partner


            Example of creating a Liferay Web Content structure:



            enter image description here






            share|improve this answer













            I would suggest Liferay:




            1. Install and start Liferay

            2. Inside Liferay, create a "site".

            3. Create a "Web Content" structure that represents a star. Its fields could be:


              • Name

              • Status (potential or in activity)

              • Popularity (a number that makes sense to you)

              • Picture

              • Introduction

              • List of history events, with for each:

              • Date

              • Even description

              • Picture

              • Contract (a file attachment)

              • Etc



            4. Create a template (in a standard templating language) that can show a star to the public.

            5. Create a theme defining the general aspect of the site (header footer etc)

            6. Create a page that will show your content. It is as simple as drag-and-dropping components (portlets) onto the page. You will probably want to put a main component that will show a star, plus a navigation component and a search component.


            Then:




            1. Create a group for super-users

            2. Create a template like in step 3, but showing more details, for instance the contract.

            3. Create a page that is visible only by super-users, like in step 6 above, but configure it to use the template created for super-users.


            Liferay also offers a categories system so you should probably use it, perhaps you can have categories for countries or for style. In such a case also add a category navigation component to the page.



            Of course, Liferay gives you admin an UI to add/edit stars.




            • Free and open source

            • Disclaimer: I work at a Liferay partner


            Example of creating a Liferay Web Content structure:



            enter image description here







            share|improve this answer












            share|improve this answer



            share|improve this answer










            answered Dec 6 '18 at 9:18









            Nicolas RaoulNicolas Raoul

            11.2k840110




            11.2k840110








            • 1





              Hi Nicolas, nice to see you here :)

              – philshem
              Dec 6 '18 at 9:20














            • 1





              Hi Nicolas, nice to see you here :)

              – philshem
              Dec 6 '18 at 9:20








            1




            1





            Hi Nicolas, nice to see you here :)

            – philshem
            Dec 6 '18 at 9:20





            Hi Nicolas, nice to see you here :)

            – philshem
            Dec 6 '18 at 9:20


















            draft saved

            draft discarded




















































            Thanks for contributing an answer to Software Recommendations Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsoftwarerecs.stackexchange.com%2fquestions%2f53523%2fcustomizable-open-source-content-and-file-management-web-app%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Berounka

            Fiat S.p.A.

            Type 'String' is not a subtype of type 'int' of 'index'