Giter Site home page Giter Site logo

tainacan / tainacan Goto Github PK

View Code? Open in Web Editor NEW
115.0 12.0 25.0 55.87 MB

A flexible and powerful repository platform for WordPress

Home Page: https://tainacan.org

License: GNU General Public License v3.0

Shell 0.18% CSS 2.30% PHP 30.02% Vue 33.23% JavaScript 29.08% HTML 0.28% SCSS 4.88% Sass 0.04%
tainacan wordpress wordpress-plugin museums archives glam repositories

tainacan's Introduction

Build Status

Tainacan

What is Tainacan?

Screenshot

Get to know Tainacan with our introduction video.

Tainacan is a software solution for building, managing and publishing digital repositories of any kind on WordPress. Manage and publish you digital collections as easily as publishing a post to your blog, while having all the tools of a professional repository platform. It is composed of a WordPress plugin, which is being developed on this repository, and an optional companion WordPress theme specially designed to produce beautiful digital exhibits. Try it out!

Features

Easy install

  • As a WordPress plugin, Tainacan can be easily installed on and integrated into an existing WordPress website.

Metadata and filters

  • Use standard metadata or choose whatever set of metadata you want to describe the items in your collections. You can choose which metadata will be used as a filter when browsing the collection.

Faceted search

  • Browse (and let the public browse it) your collection using a faceted search interface with filters you have chosen.

Manage taxonomies

  • Manage vocabularies that can be used across all your collections.

Themes

  • Tainacan has its own default theme, which helps you present your collections in a beautiful and effective way as it is developed to incorporate all of Tainacan functionalities. However, it will also work with any WordPress theme. For developers, it will be easy to add Tainacan specific features to an existing theme.

API and interoperability

  • Tainacan implements a RESTful API (read and write) to allow other applications to interact with your repository. Expose you collection in different formats, such as JSON, JSON-LD and OAI-PMH. If your collection uses a custom standard, you can map it to well-known standards such as DublinCore.

Showcases

Check out the digital exhibits in our Showcase page to see Tainacan in action!

Support

In addition to our documentation and instructional videos, we provide technical support on our online forum in English, Portuguese and Spanish. You are welcome to send all of your questions!

Developers

Please refer to our Developers Documentation if you want to develop Tainacan plugins, themes or if you want to contribute to the core.

Contributing

Tainacan is a free, open-source software licensed under GPLv3. Contributions to the codebase will abide to the same license; other contributions may be under additional or other terms.

To contribute to our project, you can report bugs and other issues, or suggest new features. You are also free to submit pull requests or translate Tainacan to multiple languages. If you are interested in contributing, you can get started by reading our contribution guidelines.

Acknowledgements

Tainacan is the results of continuous efforts from developers, researchers, policy makers and GLAMs in Brazil. We are eternally grateful for all of our amazing contributors!

tainacan's People

Contributors

ambrosiani avatar andre2ar avatar contraexemplo avatar dependabot[bot] avatar eduardohumberto avatar erickungarelli avatar f4bs avatar fabianobn avatar jacsonp avatar johanpdr avatar leogermani avatar mateuswetah avatar pappasadrian avatar r-guimaraes avatar rafaelchavesfreitas avatar rondelly avatar vnmedeiros avatar walisonjose avatar weryques avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tainacan's Issues

Investigate Textual Search behaviour

Sometimes, when performing a textual search at collection level, the search is not updated properly, presenting either all items or values from previous search.

Date formatting on date fields, filters and lists

The date formats exhibited on fields, filters and lists are incompatible among they.

I suggest to use a mask (see v-mask) on inputs to force a pattern, and that pattern should be compatible with wordpress date format configured on wordpress admin dashboard.

ad

Select item in all pages

When the user selects all items in a page, suggest to make a selection in all item in the remaining pages. Bulk add, delete or other actions will apply to all items

Remove Buefy Tables

Buefy tables should be replaced by normal html tables (yet still styled with Bulma classes) to allow future demands for Tables responsiveness and selection modes.

Filter gallery media by current post

Although it's implemented, all media frames from wordpress are not filtering the listed media by the related post, we need to investigate this..

Date Picker overflow

Date Picker is partially exhibited, because the overflow y or x of filters sidebar.

Layout adjustments on Item Edition Page and Item Visualization Page

Several details need to be implemented on Item Edition Page to match the current layouts. The metadata form list should be collapsable. The thumbnail and attachment boxes need appropriate box padding and delete buttons. The Attachments and selected Document needs gallery listing with the images proposed by the design team, according to file type.

All of this and more are valid to Item Visualization Page, that now has a proposed layout.

Text search

Free text search, in collection and repository level

Accessibility !

We've been leaving accessibility aside so far. I think it's time to start implementing at least basic feedback for screen-readers.
This and other accessibility features can be separated into some tasks, which I'll be listing here:

  • Add alt to imgs with relevant and translatable content description.
  • Add navigational links to the beginning of a page.
  • Add proper hierarchy with headers.

Item page

The item page should be like item edition page, but without possibility of edition.

Item visualization page

Create a first version for the item visualization page in the admin.

It could use the output of the helper methods of the Item

get_document_html()
get_metadata_as_html()
and list attachments

Initializing repositories on API classes must use singleton

example:

public function init_objects() {
		$this->items_repository = new Repositories\Items();
		$this->item = new Entities\Item();
		$this->item_metadata = new Repositories\Item_Metadata();
		$this->collections_repository = new Repositories\Collections();
	}

You should use global objects or implement a singleton Trait for all classes

Remove Filtering logic from ItemsPage

ItemsPage has the textual search and status tabs implemented on it. The first should be moved to FiltersItemsList component (and this should probably receive a new name) while the second should be moved to SearchControl component.

Filter tag input is not really filtering

To reproduce:

Create a filter from field Title as tag input;

Try to filter as image below shows:

filter-error

The expected result is that no show suggestions if entered text not match any title.

Filter Media Uploader by current Post

At least on Attachment submission, we should filter the WordPress Media uploader gallery by those items related to post. This is possible passing the uploadedTo parameter on the library constructor.

This is causing a problem though, where the gallery do not refresh automatically it's items after a new upload, even having the same selected. Because of that, we leave filtering disabled so far, but it certainly needs to be investigated.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.